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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ospf_interface_events.c

?? vxworks下ospf協議棧
?? C
?? 第 1 頁 / 共 2 頁
字號:
/* ospf_interface_events.c - used for executing interface events *//* Copyright 1998 - 2003 Wind River Systems, Inc. */#include "copyright_wrs.h"/*modification history--------------------02e,30jun03,agi Fixed SPR#88879, ospf does not clean up external LSDB when an                 interface is brought down02d,26may03,agi Changed rwos_get_system_elapsed_time_second() to                ospf_get_system_elapsed_time_second()02c,22apr03,ram	SPR#76812 Modifications for OSPF performance enhancements02b,29jan03,asr Fix for SPR# 85573. Build, install & flood new router LSA after                link down.02a,03dec02,ram SPR#84312 - Change elapsed time to return seconds23,29april02,ark Added in fix for SPR 7578522,10April02,bt			modified to not generate Network-LSA for PTMP and POINT-to-POINT21,22march02,kc            Fixed SPR74261. When triggering the interface down event to                            reset the interface variables, it is necessary to flush all                            lsas associated with the area if there is no more active                            interface in that area. 20,13october01,kc			Dynamic configuration changes.19,06october01,kc  		Modified ospf_process_interface_backup_seen_event() and                 			ospf_process_interface_wait_timer_event to calculate DR and BDR                 			only if interface type is broadcast or NBMA.18,3may01,jkw 				change ospf_reset_interface_variables_and_timers_and_destroy_all_associated_neighbor_connections17,21may01,jkw 			add in new function for point to point16,26september00,reshma	Added WindRiver CopyRight15,25september00,reshma	RFC-1587 implementation for OSPF NSSA Option, also tested against ANVL.14,07july00,reshma			Unix compatibility related changes.13,04april00,reshma		Added some MIB support (Read only).Passed all important ANVL OSPF tests.12,23december99,reshma		Compatibility with VxWorks-IP and VxWorks RTM-interface11,28december98,jack		Compiled and added some comments10,11november98,jack		Config changes, linted and big endian changes09,30october98,jack		Incorporate changes for compilation on Vxworks08,23august98,jack			ANVL tested OSPF with PATRICIA tree route table and no recursion07,10august98,jack			PATRICIA Route Table Based OSPF Code Base06,04june98,jack			Integration with RTM and BGP05,24april98,jack			RTM changes04,10july97,cindy			Pre-release v1.52b03,02october97,cindy		Release Version 1.5202,22october96,cindy		Release Version 1.5001,05june96,cindy			First Beta Release*//*DESCRIPTIONospf_interface_events.c is used for processing interface events.  Interface events include:OSPF_INTERFACE_UP, OSPF_WAIT_TIMER, OSPF_BACKUP_SEEN, OSPF_NEIGHBOR_CHANGE, OSPF_LOOP_INDICATION,OSPF_UNLOOP_INDICATION, OSPF_INTERFACE_DOWN.This file is used whenever an interface event occurs.*/#include "ospf.h"#if defined (__OSPF_VIRTUAL_STACK__)#include "ospf_vs_lib.h"#endif /* __OSPF_VIRTUAL_STACK__ *//***********************************************************************************************************************************/static char *ospf_interface_types[] ={	"",	"Point To Point",	"Broadcast",	"OSPF_NBMA",	"Point To Multipoint",	"Virtual"};static char *ospf_interface_states[] ={    "Down",    "Loopback",    "Waiting",    "Point To Point",    "DR Other",    "BackupDR",    "DR "};static char *ospf_interface_events[] ={    "Interface Up",    "Wait Timer",    "Backup Seen",    "Neighbor Change",    "Loop Indication",    "Unloop Indication",    "Interface Down"};/***********************************************************************************************************************************/static void ospf_calculate_backup_designated_router_and_designated_router_for_attached_network (OSPF_INTERFACE *sptr_interface,	enum OSPF_INTERFACE_EVENT event);static void ospf_interface_state_transition_printf (OSPF_INTERFACE *sptr_interface,enum OSPF_INTERFACE_EVENT event,	enum OSPF_INTERFACE_STATE old_state);static void ospf_calculate_point_to_point_network (OSPF_INTERFACE *sptr_interface);/*************************************************************************** ospf_process_interface_up_event - execute when interface comes up** This routine will initialize the interface variables and bring up* the interface specified.** <sptr_interface> OSPF interface** RETURNS: N/A** ERRNO: N/A** NOMANUAL*//*****************************************************************************************//* section 9.3, State: Down (p. 66-67) */void ospf_process_interface_up_event (OSPF_INTERFACE *sptr_interface){	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_process_interface_up_event\r\n");	old_state = sptr_interface->state;	/* SPR 84312 -- Begin */	sptr_interface->potential_neighbor.last_hello = ospf_get_system_elapsed_time_second ();	/* SPR 84312 -- End */	sptr_interface->potential_neighbor.periodic_inactivity_time_counter = 0x00000000L;	sptr_interface->potential_neighbor.inactivity_timer_enabled = TRUE;	ospf_send_hello (sptr_interface, NULL, FALSE);						/* begin periodic sending of Hello packets out the interface */	if ((sptr_interface->type == OSPF_POINT_TO_POINT) || (sptr_interface->type == OSPF_POINT_TO_MULTIPOINT) || (sptr_interface->type == OSPF_VIRTUAL_LINK))		{		sptr_interface->state = OSPF_INTERFACE_POINT_TO_POINT;        sptr_interface->point_timer_enabled = TRUE;		}	else if (sptr_interface->priority == 0x0000)		{		sptr_interface->state = OSPF_INTERFACE_DESIGNATED_ROUTER_OTHER;		}	else		{		sptr_interface->state = OSPF_INTERFACE_WAITING;		sptr_interface->periodic_wait_time_counter = 0x00000000L;		sptr_interface->wait_timer_enabled = TRUE;		if (sptr_interface->type == OSPF_NBMA)			{			for (sptr_neighbor = sptr_interface->sptr_neighbor; sptr_neighbor != NULL;	sptr_neighbor = sptr_next_neighbor)				{				sptr_next_neighbor = sptr_neighbor->sptr_forward_link;				if (sptr_neighbor->priority > 0x0000)				/* check if neighbor is eligible to become designated router */					{					ospf_execute_neighbor_state_machine (OSPF_START, sptr_neighbor->state, sptr_interface, sptr_neighbor);					}				}			}		}	if (sptr_interface->type == OSPF_VIRTUAL_LINK)		{		sptr_interface->sptr_transit_area->flags._bit.virtual_up = TRUE;		++ospf.number_of_virtual_links_in_Up_state;		if (ospf.sptr_backbone_area != NULL)			{			if (ospf.sptr_backbone_area->lock_time == 0x00000000L)				{				/* SPR 84312 -- Begin */				ospf.sptr_backbone_area->lock_time = ospf_get_system_elapsed_time_second ();				/* SPR 84312 -- End */				}			}		}	else		{		sptr_interface->sptr_area->build_router = TRUE;		/* section 12.4, item (2) (page 115) */		}	++sptr_interface->sptr_area->number_of_interfaces_in_up_state;	ospf_interface_state_transition_printf (sptr_interface, OSPF_INTERFACE_UP, old_state);	++sptr_interface->events;	/* SPR 84312 -- Begin */	sptr_interface->up_time = ospf_get_system_elapsed_time_second ();	/* SPR 84312 -- End */	return;}/*************************************************************************** ospf_process_interface_wait_timer_event - execute when interface wait timer event is received** This routine will either calculate the point to point network if the* interface type is point to point or execute the DR and BDR election* process.** <sptr_interface> OSPF interface** RETURNS: N/A** ERRNO: N/A** NOMANUAL*//*****************************************************************************************//* section 9.3, State: Waiting (p. 67) */void ospf_process_interface_wait_timer_event (OSPF_INTERFACE *sptr_interface){	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_process_interface_wait_timer_event\r\n");	sptr_interface->wait_timer_enabled = FALSE;    if (sptr_interface->state == OSPF_INTERFACE_POINT_TO_POINT)		{		ospf_calculate_point_to_point_network (sptr_interface);		}	else		{        ospf_calculate_backup_designated_router_and_designated_router_for_attached_network (sptr_interface, OSPF_WAIT_TIMER);        }	return;}/*************************************************************************** ospf_process_interface_backup_seen_event - execute when interface backup seen event is received** This routine will execute the DR and BDR election process.** <sptr_interface> OSPF interface** RETURNS: N/A** ERRNO: N/A** NOMANUAL*//*****************************************************************************************//* section 9.3, State: Waiting (p. 67) */void ospf_process_interface_backup_seen_event (OSPF_INTERFACE *sptr_interface){	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_process_interface_backup_seen_event\r\n");	sptr_interface->wait_timer_enabled = FALSE;	ospf_calculate_backup_designated_router_and_designated_router_for_attached_network (sptr_interface, OSPF_BACKUP_SEEN);	return;}/*************************************************************************** ospf_process_interface_neighbor_change_event - execute when interface neighbor change event is received** This routine will execute the DR and BDR election process if* the interface type is either broadcast or nbma.** <sptr_interface> OSPF interface** RETURNS: N/A** ERRNO: N/A** NOMANUAL*//*************************************************************************//* section 9.3, State: DR Other, Backup, or DR (p. 68) */void ospf_process_interface_neighbor_change_event (OSPF_INTERFACE *sptr_interface){	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_process_interface_neighbor_change_event\r\n");	sptr_interface->flags._bit.neighbor_change = FALSE;	sptr_interface->wait_timer_enabled = FALSE;	if ((sptr_interface->type == OSPF_BROADCAST) || (sptr_interface->type == OSPF_NBMA))		{		ospf_calculate_backup_designated_router_and_designated_router_for_attached_network (sptr_interface, OSPF_NEIGHBOR_CHANGE);		}	return;}/*************************************************************************** ospf_process_interface_loop_indication_event - execute when interface loop indication event is received** This routine will reset all the interface variables and timers.  This* routine will destroy all the associated neighbor connections with* the interface specified.** <sptr_interface> OSPF interface** RETURNS: N/A** ERRNO: N/A** NOMANUAL*//*********************************************************************************************//* section 9.3, State: Any (p. 68) */void ospf_process_interface_loop_indication_event (OSPF_INTERFACE *sptr_interface){	OSPF_PRINTF_PROLOGUE (OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_process_interface_loop_indication_event\r\n");	ospf_reset_interface_variables_and_timers_and_destroy_all_associated_neighbor_connections (sptr_interface, OSPF_LOOP_INDICATION, OSPF_INTERFACE_LOOPBACK);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩不卡免费视频| 国v精品久久久网| 日韩av午夜在线观看| 国产精品色眯眯| 久久久一区二区| 精品国产三级电影在线观看| 欧美一区二区三区四区视频| 91麻豆精品91久久久久同性| 欧美日韩三级在线| 欧美日韩精品系列| 欧美日韩精品一区二区三区蜜桃| 欧美日韩国产123区| 91麻豆精品国产| 精品999在线播放| 国产欧美一区二区精品性色超碰| 国产视频一区不卡| 国产精品人人做人人爽人人添| 中文字幕av一区 二区| 国产精品麻豆视频| 亚洲最大成人综合| 日韩高清不卡在线| 免费在线视频一区| 国产一区视频导航| 91在线观看一区二区| 欧美日韩在线精品一区二区三区激情 | 国产一区二区三区久久久 | 在线观看日韩一区| 欧美日韩一级黄| 精品欧美乱码久久久久久| 久久久久久一级片| 一区二区三区日韩| 九色porny丨国产精品| 懂色一区二区三区免费观看| 欧美性生活大片视频| 日韩欧美一区在线| 国产精品无遮挡| 三级久久三级久久久| 国产一区二区成人久久免费影院| 91蜜桃在线观看| 911精品国产一区二区在线| 国产欧美一区二区精品性色| 亚洲综合一区二区三区| 激情综合五月天| 色偷偷一区二区三区| 日韩三级在线观看| 国产精品国产三级国产| 日韩电影免费在线看| 成人夜色视频网站在线观看| 制服视频三区第一页精品| 亚洲成av人片www| 精品制服美女丁香| 日本久久一区二区三区| 欧美成人性战久久| 亚洲蜜臀av乱码久久精品| 激情深爱一区二区| 欧美日韩日日摸| 国产欧美日韩麻豆91| 肉色丝袜一区二区| thepron国产精品| 日韩欧美视频一区| 亚洲一区二区三区中文字幕| 国产精品一区二区x88av| 欧美日韩一区二区三区不卡| 国产精品无码永久免费888| 视频在线观看91| 91久久精品一区二区| 久久久天堂av| 奇米精品一区二区三区在线观看 | 欧美精品v国产精品v日韩精品| 国产精品欧美综合在线| 国内精品免费**视频| 欧美色综合网站| 亚洲视频中文字幕| 国产精品99久久久久久久女警| 9191成人精品久久| 日韩福利电影在线| 日韩av在线发布| 91久久精品网| 亚洲欧洲成人精品av97| 国产一区在线看| 欧美久久高跟鞋激| 亚洲一区在线视频| 91在线高清观看| 国产精品久久久久影院色老大 | 成人午夜激情在线| 精品人伦一区二区色婷婷| 亚洲成人激情综合网| 99国内精品久久| 中文字幕va一区二区三区| 国产酒店精品激情| 久久品道一品道久久精品| 久久机这里只有精品| 3atv在线一区二区三区| 五月婷婷激情综合网| 欧美午夜一区二区三区| 一区av在线播放| 91成人免费电影| 一区二区在线观看av| 色综合久久中文字幕综合网| 成人欧美一区二区三区白人| 99精品一区二区三区| 自拍偷拍欧美精品| 91免费观看视频| 亚洲精品国产高清久久伦理二区| 色综合一区二区三区| 亚洲免费观看高清| 欧亚洲嫩模精品一区三区| 亚洲国产精品一区二区久久 | 日韩三级精品电影久久久| 日韩精品国产精品| 91精品国产入口在线| 美女一区二区久久| 一区二区三区鲁丝不卡| 国产精品嫩草影院com| 国产精品一区免费在线观看| 久久久久青草大香线综合精品| 国产麻豆日韩欧美久久| 国产免费久久精品| 91亚洲精品久久久蜜桃网站| 一区二区三区精品在线| 欧美日韩久久一区| 久久99精品国产麻豆婷婷 | 亚洲欧美日韩系列| 欧美日韩一区二区欧美激情| 免费久久精品视频| 国产欧美一区二区精品秋霞影院| av中文字幕在线不卡| 亚洲国产一二三| 精品久久国产97色综合| 岛国一区二区三区| 亚洲午夜久久久久中文字幕久| 日韩视频免费观看高清完整版在线观看 | 五月天激情小说综合| 精品日本一线二线三线不卡| 成人h动漫精品一区二| 亚洲午夜视频在线观看| 日韩欧美中文一区| 99久久久免费精品国产一区二区| 亚洲综合色噜噜狠狠| 国产精品三级电影| 老司机午夜精品99久久| 久久免费午夜影院| 91免费国产在线观看| 日本网站在线观看一区二区三区| 久久综合狠狠综合久久综合88 | 国产精品女主播在线观看| 91精品福利在线| 激情图区综合网| 亚洲精品免费在线播放| 精品日韩一区二区三区| 色播五月激情综合网| 奇米亚洲午夜久久精品| 亚洲欧洲韩国日本视频| 欧美本精品男人aⅴ天堂| 不卡电影一区二区三区| 秋霞国产午夜精品免费视频| 亚洲欧洲无码一区二区三区| 宅男噜噜噜66一区二区66| 97se亚洲国产综合自在线| 奇米影视在线99精品| 亚洲精品日韩专区silk| 久久精品视频免费观看| 欧美精品在线观看播放| 成人av电影在线观看| 老色鬼精品视频在线观看播放| 亚洲精品日韩综合观看成人91| 久久久精品影视| 这里是久久伊人| 色婷婷综合久久久| 国产99久久久精品| 福利一区二区在线| 蓝色福利精品导航| 欧美视频你懂的| 一区二区三区在线视频观看 | 亚洲国产人成综合网站| 国产欧美一区在线| 日韩免费看的电影| 欧美日韩视频在线一区二区| 91色porny在线视频| 国产盗摄精品一区二区三区在线| 视频一区二区三区入口| 亚洲夂夂婷婷色拍ww47| 亚洲丝袜另类动漫二区| 中文字幕不卡的av| 国产亚洲制服色| 精品国产露脸精彩对白| 91麻豆精品国产91久久久久久久久 | 91免费观看视频在线| 成人一二三区视频| 国产成人免费在线视频| 韩国午夜理伦三级不卡影院| 奇米亚洲午夜久久精品| 婷婷丁香久久五月婷婷| 亚洲图片欧美视频| 一二三四社区欧美黄| 亚洲一区二区在线播放相泽| 亚洲女同一区二区| 亚洲男人电影天堂| 亚洲欧洲av一区二区三区久久| 国产精品你懂的|