亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ospf_interface_events.c

?? vxworks下ospf協(xié)議棧
?? C
?? 第 1 頁 / 共 2 頁
字號:
	return;}/*************************************************************************** ospf_process_interface_unloop_indication_event - execute when interface unloop indication event is received** This routine will change the interface to a down state.** <sptr_interface> OSPF interface** RETURNS: N/A** ERRNO: N/A** NOMANUAL*//*************************************************************************************//* section 9.3, State: Loopback (p. 68-69) */void ospf_process_interface_unloop_indication_event (OSPF_INTERFACE *sptr_interface){	enum OSPF_INTERFACE_STATE old_state;	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_process_interface_unloop_indication_event\r\n");	old_state = sptr_interface->state;	sptr_interface->state = OSPF_INTERFACE_IS_DOWN;	ospf_interface_state_transition_printf (sptr_interface, OSPF_UNLOOP_INDICATION, old_state);	++sptr_interface->events;	return;}/*************************************************************************** ospf_process_interface_down_event - execute when interface down event is received** This routine will reset all the interface variables and timers and* destroy all associated neighbor connections.** <sptr_interface> OSPF interface** RETURNS: N/A** ERRNO: N/A** NOMANUAL*//*********************************************************************************************//* section 9.3, State: Any (p. 68) */void ospf_process_interface_down_event (OSPF_INTERFACE *sptr_interface){	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_process_interface_down_event\r\n");	ospf_reset_interface_variables_and_timers_and_destroy_all_associated_neighbor_connections (sptr_interface, OSPF_INTERFACE_DOWN, OSPF_INTERFACE_IS_DOWN);    /* SPR# 85573 fix start     * The interface has gone down, so build, install & flood new router LSA    */    ospf_generate_network_and_router_link_state_advertisements (sptr_interface);    /* SPR# 85573 fix end */	return;}/*************************************************************************** ospf_calculate_backup_designated_router_and_designated_router_for_attached_network - calculate the DR and BDR for the attached network** This routine will calculate the DR and BDR for the* attached network.** <sptr_interface> OSPF interface** <event> Interface event** RETURNS: N/A** ERRNO: N/A** NOMANUAL*//**********************************************************************************************************************************/static void ospf_calculate_backup_designated_router_and_designated_router_for_attached_network (OSPF_INTERFACE *sptr_interface,	enum OSPF_INTERFACE_EVENT event){	enum OSPF_INTERFACE_STATE old_state;	ULONG address_of_old_designated_router =0;	BYTE old_build_router;	BYTE old_build_network;	USHORT age = 0x00;	OSPF_LS_DATABASE_ENTRY *sptr_network_database_entry=NULL;	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_calculate_backup_designated_router_and_designated_router_for_attached_network\r\n");	old_state = sptr_interface->state;	address_of_old_designated_router = sptr_interface->designated_router.address;	ospf_run_designated_router_election (sptr_interface);/*********************************************************************************************************************	A router that has formerly been the Designated Router for a network,	but is no longer, should flush the network-LSA that it had previously SPR#75785***********************************************************************************************************************/     if(((sptr_interface->designated_router.address) != (address_of_old_designated_router)) &&         (address_of_old_designated_router == sptr_interface->address))  {        /*search for the old network LSA entry in the  database and set age= OSPF_MAX_AGE */ 		/* SPR#76812 -- Begin */		sptr_network_database_entry = ospf_find_LSA (sptr_interface->sptr_area, address_of_old_designated_router,ospf.router_id, OSPF_LS_NETWORK);		/* SPR#76812 -- End */			if(sptr_network_database_entry != NULL)			{				age = OSPF_MAXIMUM_AGE;				age = host_to_net_short (age);				/* Assign OSPF_MAX_AGE value to network LSA*/				sptr_network_database_entry->advertisement.sptr_network->ls_header.age = age;			}	}	if ((sptr_interface->state != old_state) || (sptr_interface->designated_router.address != address_of_old_designated_router))		{		sptr_interface->sptr_area->build_router = TRUE;			/* section 12.4, items (2) & (3) (page 115) */		}	old_build_router = sptr_interface->sptr_area->build_router;   /*#$-NOTE:put net links-$#*/	old_build_network = sptr_interface->flags._bit.build_network;	ospf_generate_network_and_router_link_state_advertisements (sptr_interface);	sptr_interface->sptr_area->build_router = old_build_router;	sptr_interface->flags._bit.build_network = old_build_network;	ospf_interface_state_transition_printf (sptr_interface, event, old_state);	++sptr_interface->events;	return;}/*************************************************************************** ospf_calculate_point_to_point_network - generate a new router lsa for the point to point network** This routine will generate a new router lsa for the point to point* network.** <sptr_interface> OSPF interface** RETURNS: N/A** ERRNO: N/A** NOMANUAL*//**********************************************************************************************************************************/static void ospf_calculate_point_to_point_network (OSPF_INTERFACE *sptr_interface){	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_calculate_point_to_point_network\r\n");	sptr_interface->sptr_area->build_router = TRUE;	/* POINT_TO_POINT and POINT_TO_MULTIPOINT interface do not generate Network-LSA __NBMA_PTMP__*/	if((sptr_interface->type != OSPF_POINT_TO_POINT) &&	   (sptr_interface->type != OSPF_POINT_TO_MULTIPOINT))	{		sptr_interface->flags._bit.build_network = TRUE;	}	ospf_generate_network_and_router_link_state_advertisements (sptr_interface);	return;}/*************************************************************************** ospf_reset_interface_variables_and_timers_and_destroy_all_associated_neighbor_connections - reset all timers and variables** This routine will reset the interface variables and destroy* all associated neighbor connections.** <sptr_interface> OSPF interface** <event> Interface event** <new_state> New interface state** RETURNS: N/A** ERRNO: N/A** NOMANUAL*/void ospf_reset_interface_variables_and_timers_and_destroy_all_associated_neighbor_connections (OSPF_INTERFACE *sptr_interface,	enum OSPF_INTERFACE_EVENT event,enum OSPF_INTERFACE_STATE new_state){	enum OSPF_INTERFACE_STATE old_state;	OSPF_NEIGHBOR *sptr_neighbor =NULL;	OSPF_NEIGHBOR *sptr_next_neighbor = NULL;	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_reset_interface_variables_and_timers_and_destroy_all_associated_neighbor_connections\r\n");	OSPF_PRINTF_DEBUG (OSPF_DEBUG_PRINTF, "OSPF: Set build_network on interface with address (HEX) %lx  to FALSE ",sptr_interface->address);	old_state = sptr_interface->state;	sptr_interface->state = new_state;	sptr_interface->wait_timer_enabled = FALSE;	sptr_interface->flags._bit.network_scheduled = FALSE;	sptr_interface->flags._bit.build_network = FALSE;	sptr_interface->potential_neighbor.designated_router = 0x00000000L;	sptr_interface->potential_neighbor.backup_designated_router = 0x00000000L;	sptr_interface->designated_router.address = 0x00000000L;	sptr_interface->backup_designated_router.address = 0x00000000L;	ospf_free_interface_acknowledgement_list (sptr_interface, FALSE);	    for (sptr_neighbor = sptr_interface->sptr_neighbor;          sptr_neighbor != NULL;          sptr_neighbor = sptr_next_neighbor)		{		sptr_next_neighbor = sptr_neighbor->sptr_forward_link;        ospf_flush_lsdb_of_external_lsas_associated_with_neighbor (            sptr_neighbor);		        ospf_execute_neighbor_state_machine (            OSPF_KILL_NEIGHBOR,             sptr_neighbor->state,             sptr_interface,             sptr_neighbor);		}    ospf_schedule_routing_table_build ();	if (sptr_interface->type == OSPF_VIRTUAL_LINK)		{		sptr_interface->sptr_transit_area->flags._bit.virtual_up = FALSE;		--ospf.number_of_virtual_links_in_Up_state;		}	--sptr_interface->sptr_area->number_of_interfaces_in_up_state;	if ( sptr_interface->sptr_area->number_of_interfaces_in_up_state == 0 )        {        /* if there is no more active interface operates in the area to which the         * interface is currently connected, flush all lsas associated with the area         */        ospf_free_areas_link_state_database( sptr_interface->sptr_area );        }	ospf_interface_state_transition_printf (sptr_interface, event, old_state);	++sptr_interface->events;	return;}/*************************************************************************** ospf_interface_state_transition_printf - print the transition of interface states** This routine will print the transition of interface states and* the event that causes the interface state to change.** <sptr_interface> OSPF interface** <event> Interface event** <old_state> Old interface state** RETURNS: N/A** ERRNO: N/A** NOMANUAL*/static void ospf_interface_state_transition_printf (OSPF_INTERFACE *sptr_interface,enum OSPF_INTERFACE_EVENT event,	enum OSPF_INTERFACE_STATE old_state){	char print_buffer[PRINT_BUFFER_SIZE];	ULONG address =0;	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_interface_state_transition_printf\r\n");	if (sptr_interface->type == OSPF_VIRTUAL_LINK)		{		address = sptr_interface->potential_neighbor.address;		}	else		{		address = sptr_interface->address;		}	OSPF_CONVERT_IP_ADDRESS_TO_DOT_FORMAT_FOR_DEBUG (print_buffer, address);	OSPF_PRINTF_INTERFACE (OSPF_INTERFACE_PRINTF, "OSPF: %s interface %s has transitioned from state %s to state %s because of event %s\r\n",		ospf_interface_types[sptr_interface->type], print_buffer, ospf_interface_states[old_state],		ospf_interface_states[sptr_interface->state], ospf_interface_events[event]);	return;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
自拍偷拍国产亚洲| 欧美无乱码久久久免费午夜一区| 日韩视频免费观看高清完整版 | 成人av网站免费| 久久久久久一二三区| 国产曰批免费观看久久久| 欧美刺激脚交jootjob| 国模冰冰炮一区二区| 国产喷白浆一区二区三区| 成人黄动漫网站免费app| 中文字幕一区二区三区四区不卡| 成人精品在线视频观看| 亚洲另类中文字| 欧美久久久久久蜜桃| 美女爽到高潮91| 久久夜色精品一区| 99re成人精品视频| 亚洲一区二区三区美女| 欧美一级搡bbbb搡bbbb| 韩国理伦片一区二区三区在线播放| 欧美激情综合五月色丁香| 一本大道久久a久久综合婷婷| 亚洲最新视频在线观看| 7777精品伊人久久久大香线蕉超级流畅 | 大胆亚洲人体视频| 亚洲最色的网站| 日韩欧美一区二区免费| 成人免费观看视频| 亚洲成a人v欧美综合天堂下载| 91麻豆精品国产自产在线 | 欧美一区中文字幕| 成人免费看黄yyy456| 亚洲va欧美va国产va天堂影院| 欧美大片国产精品| 99精品视频在线免费观看| 丝袜亚洲另类欧美| 国产精品视频一二三| 欧美美女网站色| 成人精品电影在线观看| 日本在线观看不卡视频| 综合激情网...| 亚洲精品在线观看视频| 色狠狠桃花综合| 国产精品91xxx| 日韩国产欧美一区二区三区| 国产精品卡一卡二卡三| 欧美一区二区三区四区在线观看| 成人免费毛片高清视频| 久久99精品久久久久久动态图 | 青娱乐精品视频| 国产精品久久久久久亚洲毛片| 日韩午夜av电影| 在线观看欧美黄色| 成人av网站大全| 国内国产精品久久| 日本vs亚洲vs韩国一区三区二区 | 国产一区二区在线观看免费 | 亚洲欧美日韩一区二区| 久久天天做天天爱综合色| 欧美日韩精品福利| 色综合久久中文字幕| 国产乱妇无码大片在线观看| 日韩电影在线观看网站| 亚洲电影视频在线| 亚洲激情av在线| 亚洲欧美在线观看| 日本一区二区免费在线观看视频 | 色婷婷激情综合| 波多野结衣一区二区三区| 国产一区二区三区电影在线观看 | 成人动漫一区二区在线| 国产一区久久久| 日韩专区一卡二卡| 亚洲成人资源网| 亚洲成人精品影院| 亚洲成人免费看| 亚洲成人自拍一区| 亚洲gay无套男同| 午夜久久电影网| 亚洲va韩国va欧美va| 午夜a成v人精品| 日本大胆欧美人术艺术动态| 亚洲福利一二三区| 日韩一区精品字幕| 免费看欧美美女黄的网站| 美国毛片一区二区三区| 毛片av中文字幕一区二区| 美日韩一区二区| 国产在线视频精品一区| 国产精品1区二区.| 成人网在线免费视频| 99久久亚洲一区二区三区青草| 成人精品视频一区二区三区| 成人在线视频一区| 99久久精品国产导航| 91高清视频在线| 在线成人av影院| 精品福利二区三区| 国产精品婷婷午夜在线观看| 国产精品久线在线观看| 亚洲免费在线视频| 午夜精品福利一区二区三区蜜桃| 日本va欧美va瓶| 国产麻豆视频一区二区| 成人免费三级在线| 欧美三级电影一区| 精品国产麻豆免费人成网站| 国产偷国产偷亚洲高清人白洁| 国产精品欧美极品| 婷婷一区二区三区| 国产成a人亚洲| 欧洲亚洲精品在线| 欧美一级日韩不卡播放免费| 久久久久88色偷偷免费| 一区二区三区四区国产精品| 免费高清视频精品| 成人一区在线看| 欧美日韩精品一区二区三区四区| 日韩视频在线你懂得| 1024成人网| 免费看精品久久片| 色哟哟在线观看一区二区三区| 欧美亚洲综合网| 久久久久久久久久久久电影 | 精品久久久久一区二区国产| 国产精品水嫩水嫩| 日产精品久久久久久久性色| 成人性生交大片免费看在线播放 | 国产精品伊人色| 欧美人妇做爰xxxⅹ性高电影| 2019国产精品| 亚洲福利一区二区| 不卡视频在线观看| 精品女同一区二区| 一区二区欧美在线观看| 激情综合网天天干| 欧美日韩国产电影| 亚洲欧美一区二区三区孕妇| 久久精品国产**网站演员| 色噜噜狠狠成人中文综合| 久久久久久久久久久久久久久99 | 日本一区二区高清| 奇米精品一区二区三区在线观看 | 91.com在线观看| 成人免费在线视频| 国产福利一区二区三区在线视频| 欧美亚洲国产怡红院影院| 欧美国产欧美综合| 国产美女主播视频一区| 欧美电视剧在线观看完整版| 亚洲妇女屁股眼交7| 色噜噜狠狠成人中文综合| 国产精品视频在线看| 国产高清成人在线| 精品日韩一区二区三区免费视频| 日韩精品欧美精品| 欧美日免费三级在线| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 激情五月播播久久久精品| 欧美一卡二卡三卡四卡| 五月天欧美精品| 欧美视频一区二区三区四区| 亚洲乱码日产精品bd| 99久精品国产| 亚洲柠檬福利资源导航| 91色.com| 自拍偷拍亚洲激情| 一本色道久久综合亚洲aⅴ蜜桃| 久久久无码精品亚洲日韩按摩| 久久精品国产精品亚洲红杏| 日韩欧美视频一区| 麻豆成人久久精品二区三区小说| 欧美日韩aaaaa| 午夜不卡在线视频| 欧美一区二区黄| 麻豆精品蜜桃视频网站| 欧美一区二区三区免费视频| 日韩精品成人一区二区三区| 欧美精品久久一区| 日本欧美一区二区在线观看| 51久久夜色精品国产麻豆| 日韩精品成人一区二区三区| 91精品啪在线观看国产60岁| 免费看欧美女人艹b| 久久综合给合久久狠狠狠97色69| 国产伦精品一区二区三区在线观看| 精品少妇一区二区三区视频免付费 | 成人精品鲁一区一区二区| 综合久久久久久久| 在线精品视频小说1| 亚洲成av人片观看| 日韩午夜激情av| 成人一区二区三区视频| 亚洲综合激情另类小说区| 欧美日韩一级二级三级| 另类成人小视频在线| 欧美国产日韩一二三区| 日本精品免费观看高清观看| 天堂一区二区在线| 国产校园另类小说区|