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

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

?? ospf_timer.c

?? vxworks下ospf協(xié)議棧
?? C
?? 第 1 頁(yè) / 共 4 頁(yè)
字號(hào):
/* ospf_timer.c - OSPF timer *//* Copyright 2000-2003 Wind River Systems, Inc. */#include "copyright_wrs.h"/*modification history--------------------  03d,17jul03,agi     Fixed opaque lsa processing03c,04jul03,agi     Fixed compiler error03b,03jul03,ram     Backed out SPR#88600 workaround03a,24jun03,agi     Fixed ospfTimer crash02z,15may03,asr	    Changes to make OSPF virtual stack compatible02y,26may03,agi     Changed rwos_get_system_elapsed_time_second() to                    ospf_get_system_elapsed_time_second()                    Added code inspection changes02x,26may03,dsk     SPR 88600 fix for stuck in EXCHANGE_START (timer added                    to restart if stuck in exchange start state too long)02w,14may03,agi     Changed RWOS semaphores to vxWorks semaphores02v,15may03,ram     SPR#88410 Fix for external route refresh update02u,22apr03,ram	    SPR#76812 Modifications for OSPF performance enhancements02t,20mar03,mwv     SPR 87019 possible reference to NULL pointer02s,29jan03,mwv     SPR 85893 set the ls_database_pending_delete when max age02r,06jan03,ram	 	SPR 85432 Changes to allow more OSPF external route processing02q,03dec02,ram     SPR 84312 - Change elapsed time to return seconds02p,19nov02,mwv     Merge TMS code SPR 8428402o,08oct02,agi     Fixed compiler warnings02n,18sep02,agi     Removed ospf_flood_advertisement_out_some_subset_of_the_routers                    _ interfaces() calls from ospf_age_the_type_11_link_state_                    database()02m,10jul02,jkw		Fix UNH 5.3 test.02l,06jun02,kc      Remove the unneeded rw_container_create_iterator() and                    rw_container_free_iterator() from ospf_age_the_link_state_database()                    and ospf_age_the_type_11_link_state_database().02k,05jun02,kc      Do not reset ospf_external_lsa_count in ospf_router_timer()02j,22apr02,ark     Added in fixes for Virtual links02i,19apr02,jkw     Fix memory leak for external lsas.02h,16apr02,jkw     One copy of external and type 11 lsa02g,09apr09,jkw     Sequence number wrap.02f,11feb02,delia   Removed CSPF build from ospf_router_timer ISR. Added Release RWOS                    semaphore on forced exit from ISR02e,20dec01,jkw     Removed sptr_area->sptr_interfaces structure.02d,12nov,jkw       Virtual link hello fix.02c,18oct01,ak      Added support for database overflow API's.02b,13oct01,kc      Dynamic configuration changes.02a,13oct01,br      Hello timer fix. SPR 7092001z,14aug01,kc      ospf_router_timer(): release rwos_ospf_mutex semaphore if error.01y,26jun01,jkw     Move global variables to ospf_globals.h for cleanup01x,19jun01,aos     Calling to ospf_clean_up_retransmit_lists_affiliated_with_this_                    advertisement () function before freeing the LS database entry.01w,21may01,jkw     Add updates for point to point01v,26sep00,reshma  Added WindRiver CopyRight01u,25sep00,reshma  RFC-1587 implementation for OSPF NSSA Option, also tested against                    ANVL.01t,07jul00,reshma  Unix compatibility related changes.01s,04apr00,reshma  Added some MIB support (Read only). Passed all important ANVL OSPF                    tests.01r,23dec99,reshma  Compatibility with VxWorks-IP and VxWorks RTM-interface01q,13aug99,jack    ifdefed lsl control calls01p,28may99,jack    Fixes in PPP related stuff01o,28dec98,jack    Compiled and added some comments01n,13nov98,jack    Changes related to introducing queuing in OSPF to RTM interface and                    bug fix on the external route additions path (to RTM)01m,11nov98,jack    Config changes, linted and big endian changes01l,30oct98,jack    Incorporate changes for compilation on Vxworks01k,23aug98,jack    ANVL tested OSPF with PATRICIA tree route table and no recursion01j,10aug98,jack    PATRICIA Route Table Based OSPF Code Base01i,06aug98,jack    In function, ospf_age_the_link_state_database, added the condition                    (sptr_database_entry->ls_database_freeme == FALSE) to check before                    calling ospf_flood_advertisement_out_some_subset_of_the_routers_                    interfaces and set sptr_database_entry->ls_database_freeme = TRUE01h,16jun98,jack    Corrected syntax error01g,16jun98,jack    Changes related to external_routes queuing and the queue processing01f,04jun98,jack    Integration with RTM and BGP01e,24apr98,jack    RTM changes01d,10jul97,cindy   Pre-release v1.52b01c,02oct97,cindy   Release Version 1.5201b,22oct96,cindy   Release Version 1.5001a,05jun96,cindy   First Beta Release*//*DESCRIPTIONospf_timer.c is used for sending OSPF packets, calculating the routing table,exporting routes, and aging the link state database on a periodic basis.This file is used every second as a timer.*/#include "ospf.h"#if defined (__OSPF_VIRTUAL_STACK__)#include "ospf_vs_lib.h"#endif /* __OSPF_VIRTUAL_STACK__ *//****************************************************************************/static void ospf_age_the_link_state_database (OSPF_AREA_ENTRY *sptr_area);static void ospf_age_the_external_link_state_database (OSPF_AREA_ENTRY *sptr_area, enum BOOLEAN first_pass_external);#if defined (__OPAQUE_LSA__)static void ospf_age_the_type_11_link_state_database (OSPF_AREA_ENTRY *sptr_area, enum BOOLEAN first_pass_external);#endif /* __OPAQUE_LSA__ */static void ospf_send_periodic_hello_packets (OSPF_INTERFACE *sptr_interface);static void ospf_retransmit_database_and_ls_request_packets (OSPF_INTERFACE *sptr_interface);static void ospf_retransmit_link_state_advertisements (OSPF_INTERFACE *sptr_interface);static void ospf_send_link_state_advertisements_that_were_queued_up_during_MinLSInterval (OSPF_AREA_ENTRY *sptr_area);IMPORT bool ospf_mib_initialize( void );/******************************************************************************** ospf_hello_timer - OSPF hello timer** This function executes the OSPF hello timer.  It ets called every* <hello_interval> seconds.** RETURNS: N/A*//* SPR 85432 -- Begin */void ospf_hello_timer ()    {    OSPF_AREA_ENTRY *sptr_area = NULL;    OSPF_INTERFACE *sptr_interface = NULL;    OSPF_PRINTF_PROLOGUE (        OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_hello_timer\r\n");    /* asr: set virtual stack context to ensure all calls from the hello     * timer task use the correct stack context     */#if defined (VIRTUAL_STACK)    virtualStackNumTaskIdSet (ospf.ospf_vsid);#endif /* VIRTUAL_STACK */    if (semTake (ospf_config_mutex, WAIT_FOREVER) == ERROR)        {        return;        }    for (sptr_area = ospf.sptr_area_list;         sptr_area != NULL;         sptr_area = sptr_area->sptr_forward_link)        {        for (sptr_interface = sptr_area->sptr_interfaces;             sptr_interface != NULL;             sptr_interface = sptr_interface->sptr_forward_link)            {            if ((sptr_interface->area_id == sptr_area->area_id) ||               ((sptr_interface->type == OSPF_VIRTUAL_LINK) &&               (sptr_interface->area_id == OSPF_BACKBONE) &&               (sptr_area->area_id == OSPF_STARTING_AREA_ID_FOR_VIRTUAL_INTERFACE)))                {                ospf_send_periodic_hello_packets (sptr_interface);                }            }        }    ospf.hello_1_second_counter = 0x00000000L;    semGive (ospf_config_mutex);    }/* SPR 85432 -- End *//********************************************************************************* ospf_router_timer - OSPF router timer** This function gets called every tick.*/void ospf_router_timer ()    {    OSPF_AREA_ENTRY *sptr_area = NULL;    OSPF_AREA_ENTRY *sptr_next_area = NULL;    OSPF_INTERFACE *sptr_interface = NULL;    OSPF_INTERFACE *sptr_next_interface = NULL;    OSPF_NEIGHBOR *sptr_neighbor;    OSPF_NEIGHBOR *sptr_next_neighbor;    enum OSPF_NEIGHBOR_STATE neighbors_old_state;    enum OSPF_ACKNOWLEDGEMENT_RETURN_TYPE return_type;    ULONG ip_address;    enum BOOLEAN first_pass_external = TRUE;    OSPF_PRINTF_PROLOGUE (        OSPF_PROLOGUE_PRINTF, "OSPF: Entering ospf_router_timer\r\n");    /* asr: set virtual stack context to ensure all calls from the     * timer task use the correct stack context     */#if defined (VIRTUAL_STACK)    virtualStackNumTaskIdSet (ospf.ospf_vsid);#endif /* VIRTUAL_STACK */    /* take the ospf global semaphore to access ospf datastructures */    if (semTake (ospf_global_mutex, WAIT_FOREVER) == ERROR)        {        return;        }    if (ospf.timer_enabled == FALSE)		{        semGive (ospf_global_mutex);		return;		}	ospf.ospf_maxaged_lsas_removed_this_tick = 0x0;	sptr_neighbor = NULL;#if defined (__OSPF_DB_OVERFLOW_SUPPORT__)	if ((ospf.in_overflow_state == TRUE) && (ospf.ospf_exit_overflow_interval !=0))	    {		if(ospf.force_out_of_overflow_state == TRUE)		    {			ospf.force_out_of_overflow_state = FALSE;			ospf_db_overflow_timer = ospf.ospf_exit_overflow_interval;			ospf.in_overflow_state = FALSE;			OSPF_PRINTF_DB_OVERFLOW (OSPF_DB_OVERFLOW_PRINTF, "OSPF: The Router has been forced out of Overflow State\n");            semGive (ospf_global_mutex); /* release semaphore taken by this ISR before leaving ISR */			return;		    }		if(ospf.reset_ospf_exit_overflow_interval == TRUE)		    {			--ospf_db_overflow_timer;			OSPF_PRINTF_DB_OVERFLOW (OSPF_DB_OVERFLOW_PRINTF, "OSPF: The Exit Overflow Timer will be reset in %ld seconds\n",ospf_db_overflow_timer);			if(ospf_db_overflow_timer == 0)			    {				ospf_db_overflow_timer = ospf.ospf_exit_overflow_interval;				ospf.in_overflow_state = FALSE;				ospf.reset_ospf_exit_overflow_interval = FALSE;				OSPF_PRINTF_DB_OVERFLOW (OSPF_DB_OVERFLOW_PRINTF, "OSPF: The Exit Overflow Timer has been reset and out of Overflow State\n");			    }		    }		else		    {			--ospf_db_overflow_timer;			OSPF_PRINTF_DB_OVERFLOW (OSPF_DB_OVERFLOW_PRINTF, "OSPF: The Exit Overflow Timer will be reset in %ld seconds\n",ospf_db_overflow_timer);			if(ospf_db_overflow_timer == 0)			    {				ospf_db_overflow_timer = ospf.ospf_exit_overflow_interval;				ospf.in_overflow_state = FALSE;				OSPF_PRINTF_DB_OVERFLOW (OSPF_DB_OVERFLOW_PRINTF, "OSPF: The Exit Overflow Timer has been reset and out of Overflow State\n");			    }		    }	    }	if ((ospf.in_overflow_state == TRUE) && (ospf.ospf_exit_overflow_interval == 0))        {		if (ospf.force_out_of_overflow_state == TRUE)		    {			ospf.force_out_of_overflow_state = FALSE;			ospf.in_overflow_state = FALSE;			OSPF_PRINTF_DB_OVERFLOW (OSPF_DB_OVERFLOW_PRINTF, "OSPF: The Router has been forced out of Overflow State\n");            }        }#endif /*__OSPF_DB_OVERFLOW_SUPPORT__*/    ospf.ospf_queue_interval_counter++;    for (sptr_area = ospf.sptr_area_list;         sptr_area != NULL;         sptr_area = sptr_next_area)        {        sptr_next_area = sptr_area->sptr_forward_link;        ++sptr_area->periodic_MinLSInterval_time_counter;#if !defined (__OSPF_VIRTUAL_LINK__)        if ((sptr_area->MinLSInterval_timer_enabled == TRUE) &&            (sptr_area->periodic_MinLSInterval_time_counter > OSPF_MinLSInterval))            {            ospf_send_link_state_advertisements_that_were_queued_up_during_MinLSInterval (sptr_area);            sptr_area->periodic_MinLSInterval_time_counter = 0x00000000L;            }#else /*__OSPF_VIRTUAL_LINK__*/        if ((sptr_area->periodic_MinLSInterval_time_counter > OSPF_MinLSInterval))            {            ospf_send_link_state_advertisements_that_were_queued_up_during_MinLSInterval (sptr_area);            sptr_area->periodic_MinLSInterval_time_counter = 0x00000000L;            }#endif  /* __OSPF_VIRTUAL_LINK__ */        ospf_age_the_link_state_database (sptr_area);								/* section 14, (page 145) */        ospf_age_the_external_link_state_database (sptr_area, first_pass_external);						/* section 14, (page 145) */#if defined (__OPAQUE_LSA__)        ospf_age_the_type_11_link_state_database (sptr_area, first_pass_external);								/* section 14, (page 145) */#endif /* __OPAQUE_LSA__ */        first_pass_external = FALSE;        for (sptr_interface = sptr_area->sptr_interfaces;             sptr_interface != NULL;             sptr_interface = sptr_next_interface)            {            sptr_next_interface = sptr_interface->sptr_forward_link;            if ((sptr_interface->area_id == sptr_area->area_id) ||

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www激情久久| 国产激情视频一区二区三区欧美| 日本va欧美va欧美va精品| 精品一区二区影视| 成人午夜短视频| 欧美午夜一区二区三区| 日韩欧美一级特黄在线播放| 中文字幕+乱码+中文字幕一区| 有码一区二区三区| 久久国产精品99久久人人澡| 成人美女在线视频| 欧美色欧美亚洲另类二区| 精品久久一区二区三区| 亚洲视频小说图片| 免费成人在线网站| 色综合天天天天做夜夜夜夜做| 精品一区二区三区免费| 99久久精品免费精品国产| 欧美日韩精品电影| 国产精品麻豆视频| 欧美肥妇bbw| 国产精品伦理在线| 蜜臀av性久久久久av蜜臀妖精 | 欧美理论电影在线| 久久久亚洲国产美女国产盗摄 | 欧美高清性hdvideosex| 国产日本欧洲亚洲| 奇米精品一区二区三区在线观看一| 成人一区二区在线观看| 日韩一区二区电影| 亚洲一区二三区| 成人毛片视频在线观看| 欧美一区二区三区在线观看视频| 自拍av一区二区三区| 国产精一区二区三区| 欧美精品vⅰdeose4hd| 亚洲精品乱码久久久久久日本蜜臀| 国内精品第一页| 6080国产精品一区二区| 亚洲免费在线观看视频| 国产白丝精品91爽爽久久| 日韩免费电影网站| 视频一区国产视频| 日本久久一区二区三区| 国产精品久久99| 国产福利一区二区三区视频在线| 欧美一级视频精品观看| 亚洲v精品v日韩v欧美v专区| 91国内精品野花午夜精品| 中文字幕 久热精品 视频在线| 国产在线视频精品一区| 日韩欧美一级精品久久| 奇米影视一区二区三区小说| 欧美丝袜丝nylons| 亚洲一二三四在线| 日本久久一区二区| 一区二区在线观看视频| av不卡在线播放| 国产精品美女久久久久久久久久久| 国产精品一区二区你懂的| 日韩一卡二卡三卡国产欧美| 日韩精品视频网站| 欧美三级午夜理伦三级中视频| 亚洲黄色免费电影| 在线观看日韩一区| 一区二区三区日韩欧美精品| 91国偷自产一区二区三区观看| 亚洲精品免费一二三区| 91久久精品一区二区三| 亚洲一区中文日韩| 欧美性xxxxxxxx| 亚洲777理论| 制服丝袜av成人在线看| 秋霞电影一区二区| 精品欧美乱码久久久久久1区2区| 另类中文字幕网| 精品国一区二区三区| 国精产品一区一区三区mba桃花 | 国产经典欧美精品| 色综合天天综合色综合av | 91国产免费看| 欧美日韩亚洲综合在线 | 欧美一卡二卡在线观看| 美女爽到高潮91| 精品国内二区三区| 国产精品99久久久久久久女警| 国产日韩欧美精品一区| 成人黄色av网站在线| 国产日韩欧美一区二区三区乱码| 成人福利视频在线看| 亚洲欧美一区二区三区久本道91| 一本到高清视频免费精品| 亚洲综合激情另类小说区| 欧美日韩一区二区不卡| 久草精品在线观看| 久久久久久久久蜜桃| caoporen国产精品视频| 一区二区三区高清| 7878成人国产在线观看| 国产在线不卡视频| 中文字幕亚洲区| 欧美三区在线视频| 国内偷窥港台综合视频在线播放| 国产精品免费免费| 欧美日韩免费视频| 国产精品一区不卡| 亚洲精品视频免费看| 91精品国产一区二区三区香蕉| 国产一区二区三区久久久 | 欧美日韩一区二区三区不卡| 久久精品国产精品青草| 中文字幕在线不卡一区二区三区| 欧美午夜寂寞影院| 国产在线一区二区| 一区二区三区在线高清| 欧美成人a视频| 99久久99久久久精品齐齐| 日韩国产在线一| 中文字幕av不卡| 91精品国产麻豆| 99热精品国产| 精品在线播放免费| 亚洲乱码中文字幕综合| 日韩欧美一级二级| 色哟哟国产精品| 国产又黄又大久久| 午夜婷婷国产麻豆精品| 国产日产欧美一区二区三区| 欧美亚洲免费在线一区| 国产91清纯白嫩初高中在线观看| 亚洲二区视频在线| 国产精品麻豆视频| 欧美成人精品二区三区99精品| 色成年激情久久综合| 韩国一区二区三区| 午夜久久电影网| 亚洲人成在线观看一区二区| 精品少妇一区二区三区视频免付费 | 欧美色图12p| 成人自拍视频在线| 免费人成网站在线观看欧美高清| 亚洲天堂成人在线观看| 精品国产乱码久久久久久图片| 91久久精品午夜一区二区| 成人夜色视频网站在线观看| 国产亚洲自拍一区| 欧美三级三级三级| 99久久精品国产观看| 国产一区二区网址| 蜜桃视频一区二区三区 | 欧美午夜精品理论片a级按摩| 不卡视频一二三四| 国产一区在线看| 久久99国产精品免费网站| 午夜精品免费在线| 一区二区三区国产| 亚洲欧美色综合| 中文字幕亚洲区| 中文字幕欧美三区| 久久综合狠狠综合久久综合88| 日韩亚洲国产中文字幕欧美| 欧美亚洲综合网| 91视频免费观看| 成人黄色av电影| 国产69精品久久久久777| 国产在线不卡一区| 精品一二三四在线| 日本视频在线一区| 日韩高清不卡一区| 日本不卡不码高清免费观看| 日韩中文字幕区一区有砖一区 | 欧美人体做爰大胆视频| 欧美在线不卡视频| 色婷婷激情一区二区三区| 91麻豆自制传媒国产之光| 成人av在线看| 成人免费视频一区| 成人高清av在线| 99精品视频一区| 不卡的av电影| 91美女在线视频| 91色九色蝌蚪| 欧洲一区二区三区免费视频| 欧美午夜宅男影院| 欧美日韩精品欧美日韩精品一| 欧美电影在线免费观看| 欧美精品欧美精品系列| 欧美日本国产视频| 日韩一区二区免费高清| 精品久久人人做人人爰| 国产亚洲精品aa| 国产精品成人免费在线| 亚洲欧洲综合另类| 亚洲一区二区三区免费视频| 一区二区三区高清| 日本视频免费一区| 国产一区999| 99r精品视频| 欧美日韩国产精品成人| 欧美一区二区福利视频|