|
| #define | GET_LOWER_IP(ip1, ip2) ((ip1) ? ((ip2) ? ((ip1)->int_ip[0] < (ip2)->int_ip[0] ? (ip1) : (ip2)) : (ip1)) : (ip2)); |
| |
| #define | DEVICE_CURR_IP (DEVICE_NWADDRESS(pstruEventDetails->nDeviceId,pstruEventDetails->nInterfaceId)) |
| |
| #define | DEVICE_CURR_MASK (DEVICE_SUBNETMASK(pstruEventDetails->nDeviceId,pstruEventDetails->nInterfaceId)) |
| |
| #define | OSPF_CURR_TIME() (pstruEventDetails->dEventTime) |
| |
| #define | strAllSPFRouters "224.0.0.5" |
| |
| #define | strAllDRouters "224.0.0.6" |
| |
| #define | strNULLIP "0.0.0.0" |
| |
| #define | strInvalidAreaId "255.255.255.254" |
| |
| #define | strSingleAreaId "255.255.255.255" |
| |
| #define | strBackboneAreaId "0.0.0.0" |
| |
| #define | ANY_DEST (GET_BROADCAST_IP(4)) |
| |
| #define | OSPF_BROADCAST_JITTER (0*MILLISECOND) |
| |
| #define | OSPF_DO_NOT_AGE (0x8000) |
| |
| #define | OSPF_LSA_MAX_AGE_DIFF (15 * MINUTE) |
| |
| #define | OSPF_AREA_GET_IN(ospf, in) (OSPF_AREA_GET((ospf),(in),NULL,NULL)) |
| |
| #define | OSPF_AREA_GET_ID(ospf, id) (OSPF_AREA_GET((ospf),0,(id),NULL)) |
| |
| #define | OSPF_AREA_GET_IP(ospf, ip) (OSPF_AREA_GET((ospf),0,NULL,(ip))) |
| |
| #define | OSPF_PDS_SET(d, ospf) (fn_NetSim_Stack_SetAppProtocolData(d,APP_PROTOCOL_OSPF,ospf)) |
| |
| #define | OSPF_PDS_GET(d) ((ptrOSPF_PDS)(DEVICE_APPVAR(d,APP_PROTOCOL_OSPF))) |
| |
| #define | OSPF_PDS_CURRENT() (OSPF_PDS_GET(pstruEventDetails->nDeviceId)) |
| |
| #define | OSPF_IF_CURRENT() (OSPF_IF_GET(OSPF_PDS_CURRENT(), pstruEventDetails->nInterfaceId)) |
| |
| #define | ospf_event_add(time, d, in, subevent, packet, eventdata) ospf_event_add_dbg(time,d,in,subevent,packet,eventdata,__LINE__,__FILE__) |
| |
|
| ptrOSPFAREA_DS | OSPF_AREA_GET (ptrOSPF_PDS ospf, NETSIM_ID in, OSPFID areaId, NETSIM_IPAddress interfaceIP) |
| |
| void | OSPF_AREA_SET (ptrOSPF_PDS ospf, ptrOSPFAREA_DS area) |
| |
| void | ospf_process_hello () |
| |
| void | ospf_handle_helloTimer_event () |
| |
| void | start_interval_hello_timer () |
| |
| void | start_sending_dd_msg () |
| |
| void | ospf_handle_DD () |
| |
| ptrOSPF_IF | OSPF_IF_GET (ptrOSPF_PDS ospf, NETSIM_ID ifId) |
| |
| void | ospf_handle_interfaceUp_event () |
| |
| void | ospf_handle_interfaceDown_event () |
| |
| void | ospf_interface_handleMultipleInterfaceEvent () |
| |
| ptrOSPF_NEIGHBOR | OSPF_NEIGHBOR_FIND (ptrOSPF_IF ospf, OSPFID id) |
| |
| ptrOSPF_NEIGHBOR | OSPF_NEIGHBOR_FIND_BY_IP (ptrOSPF_IF thisInterface, NETSIM_IPAddress ip) |
| |
| bool | ospf_is_router_fullAdjacentWithDR (ptrOSPF_IF ospf) |
| |
| bool | ospf_is_dr_router_fulladjacentwithAnother (ptrOSPF_IF ospf) |
| |
| void | ospf_neighbor_insertToSendList (ptrOSPFLIST list, ptrOSPFLSAHDR lsa, double time) |
| |
| ptrOSPFLSAHDR | ospf_neighbor_searchSendList (ptrOSPFLIST list, ptrOSPFLSAHDR lsa) |
| |
| bool | ospf_neighbor_isAnyNeighborInExchangeOrLoadingState (ptrOSPF_PDS ospf) |
| |
| NETSIM_ID | ospf_neighbor_getInterfaceIdforThisNeighbor (ptrOSPF_PDS ospf, NETSIM_IPAddress neighIPaddr) |
| |
| ptrOSPF_NEIGHBOR | ospf_neighbor_new (NETSIM_IPAddress ip, OSPFID rid) |
| |
| void | ospf_neighbor_add (ptrOSPF_IF ospf, ptrOSPF_NEIGHBOR neigh) |
| |
| void | ospf_neighbor_handle_helloReceived_event () |
| |
| void | ospf_neighbor_handle_1way_event () |
| |
| void | ospf_neighbor_handle_2wayReceived_event () |
| |
| void | ospf_neighbor_handle_negotiationDone_event () |
| |
| void | ospf_neighbor_handle_exchangeDone_event () |
| |
| void | ospf_neighbor_handle_start_event () |
| |
| void | ospf_neighbor_handle_inactivityTimer_event () |
| |
| void | ospf_neighbor_handle_LoadingDoneEvent () |
| |
| void | ospf_neighbor_handle_KillNbrEvent () |
| |
| void | ospf_area_init (NETSIM_ID d, NETSIM_ID in) |
| |
| void | ospf_area_handleABRTask (ptrOSPF_PDS ospf) |
| |
| void | ospf_lsahdr_add_lsa (ptrOSPFLSAHDR lhdr, void *lsa, UINT16 len) |
| |
| bool | ospf_lsa_update_lsahdr (ptrOSPF_PDS ospf, ptrOSPFAREA_DS area, ptrOSPFLSAHDR lsa, ptrOSPFLSAHDR old, LSTYPE lstype) |
| |
| void | ospf_lsa_print (char *logid, ptrOSPFLSAHDR LSHeader, char *msg) |
| |
| void | ospf_lsa_printList (char *logid, ptrOSPFLIST list, char *name) |
| |
| void | ospf_lsa_schedule_routerLSA (ptrOSPF_PDS ospf, ptrOSPFAREA_DS area, bool isFlush) |
| |
| void | ospf_lsa_scheduleNWLSA (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface, ptrOSPFAREA_DS area, bool isFlush) |
| |
| void | ospf_lsa_scheduleSummaryLSA (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface, ptrOSPFAREA_DS area, NETSIM_IPAddress destAddr, NETSIM_IPAddress destMask, OSPFDESTTYPE destType, bool isFlush) |
| |
| void | ospf_lsa_schedule (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface, ptrOSPFAREA_DS area, ptrOSPFLSAHDR lsa) |
| |
| void | ospf_lsa_ScheduleLSDB () |
| |
| void | ospf_lsa_handle_floodTimer_event () |
| |
| UINT16 | ospf_lsa_maskDoNotAge (ptrOSPF_PDS ospf, UINT16 routerLSAAge) |
| |
| void | ospf_lsa_assignNewLSAge (ptrOSPF_PDS ospf, UINT16 *routerLSAAge, UINT16 newLSAAge) |
| |
| int | ospf_lsa_compare (ptrOSPF_PDS ospf, ptrOSPFLSAHDR oldLS, ptrOSPFLSAHDR newLS) |
| |
| bool | ospf_lsa_compareToListMem (ptrOSPF_PDS ospf, ptrOSPFLSAHDR oldLS, ptrOSPFLSAHDR newLS) |
| |
| int | ospf_lsa_isMoreRecent (ptrOSPF_PDS ospf, ptrOSPFLSAHDR newLSA, ptrOSPFLSAHDR oldLSA) |
| |
| bool | ospf_lsa_isSelfOriginated (ptrOSPF_PDS ospf, ptrOSPFLSAHDR lsa) |
| |
| void | ospf_lsa_queueToFlood (ptrOSPF_PDS pds, ptrOSPF_IF ospf, ptrOSPFLSAHDR lsa) |
| |
| bool | ospf_lsa_flood (ptrOSPF_PDS pds, OSPFID area, ptrOSPFLSAHDR lsa, NETSIM_IPAddress srcAddr, NETSIM_ID in) |
| |
| void | ospf_lsa_flush (ptrOSPF_PDS ospf, ptrOSPFAREA_DS area, ptrOSPFLSAHDR lsa) |
| |
| bool | ospf_lsa_is_content_changed (ptrOSPF_PDS ospf, ptrOSPFLSAHDR newLSA, ptrOSPFLSAHDR oldLSA) |
| |
| void | ospf_lsa_assignNewLSAIntoLSOrigin (ptrOSPF_PDS pds, ptrOSPFLSAHDR LSA, ptrOSPFLSAHDR newLSA) |
| |
| bool | ospf_lsa_hasMaxAge (ptrOSPF_PDS ospf, ptrOSPFLSAHDR lsa) |
| |
| bool | ospf_lsa_checkForDoNotAge (ptrOSPF_PDS ospf, UINT16 routerLSAAge) |
| |
| void | ospf_lsa_addToMaxAgeLSAList (ptrOSPF_PDS ospf, OSPFID areaId, ptrOSPFLSAHDR lsa) |
| |
| bool | ospf_lsa_hasLink (ptrOSPF_PDS ospf, ptrOSPFLSAHDR wlsa, ptrOSPFLSAHDR vlsa) |
| |
| ptrOSPFLSAHDR | ospf_lsa_find_old_lsa (ptrOSPFLIST list, OSPFID rid, OSPFID lid) |
| |
| void | ospf_lsa_printRLSA (char *logid, ptrOSPFRLSA rlsa) |
| |
| bool | Ospf_rlsa_getASBRouter (UINT8 VEB) |
| |
| bool | Ospf_rlsa_getABRouter (UINT8 VEB) |
| |
| void | ospf_rlsa_originateRouterLSA (ptrOSPFAREA_DS area, bool isFlush) |
| |
| bool | ospf_rlsa_isBodyChanged (ptrOSPFLSAHDR newLSA, ptrOSPFLSAHDR oldLSA) |
| |
| bool | ospf_rlsa_hasLink (ptrOSPF_PDS ospf, ptrOSPFLSAHDR wlsa, ptrOSPFLSAHDR vlsa) |
| |
| ptrOSPFLSAHDR | ospf_lsdb_lookup_lsaList (ptrOSPFLIST list, OSPFID adverRouter, OSPFID linkStateId) |
| |
| ptrOSPFLSAHDR | ospf_lsdb_lookup_lsaListByID (ptrOSPFLIST list, OSPFID linkStateId) |
| |
| ptrOSPFLSAHDR | ospf_lsdb_lookup (ptrOSPF_PDS ospf, ptrOSPFAREA_DS area, LSTYPE lsType, OSPFID adveRouter, OSPFID linkStateID) |
| |
| bool | ospf_lsdb_install (ptrOSPF_PDS ospf, OSPFID areaId, ptrOSPFLSAHDR lsa, ptrOSPFLIST list) |
| |
| bool | ospf_lsdb_update (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface, ptrOSPFLSAHDR lsa, ptrOSPFAREA_DS thisArea, NETSIM_IPAddress srcAddr) |
| |
| void | ospf_lsdb_scheduleMaxAgeRemovalTimer (ptrOSPF_PDS ospf) |
| |
| void | ospf_lsdb_handleMaxAgeRemovalTimer () |
| |
| void | ospf_lsdb_removeLSA (ptrOSPF_PDS ospf, ptrOSPFAREA_DS area, ptrOSPFLSAHDR lsa) |
| |
| void | ospf_LSDB_handle_IncrementAge_event () |
| |
| void | ospf_handle_LSUPDATE () |
| |
| void | ospf_lsupdate_send () |
| |
| void | ospf_lsu_sendLSUpdateToNeighbor (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface) |
| |
| void | ospf_lsupdate_handleRxmtTimer () |
| |
| void | ospf_lsaAck_sendDelayedAck (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface, ptrOSPFLSAHDR lsa) |
| |
| void | ospf_lsaAck_sendDirectAck (ptrOSPF_PDS ospf, NETSIM_ID interfaceId, ptrARRAYLIST ackList, NETSIM_IPAddress nbrAddr) |
| |
| void | ospf_lsack_handleDelayedAckTimer () |
| |
| void | ospf_handle_LSAck () |
| |
| ptrOSPFLIST | ospf_lsreq_initList () |
| |
| ptrOSPFLSAHDR | ospf_lsReq_searchFromList (ptrOSPF_NEIGHBOR neigh, ptrOSPFLSAHDR lsa) |
| |
| void | ospf_lsreq_insertToList (ptrOSPF_NEIGHBOR neigh, ptrOSPFLSAHDR lsHdr, double time) |
| |
| void | ospf_lsreq_removeFromReqList (ptrOSPFLIST list, ptrOSPFLSAHDR lsa) |
| |
| bool | ospf_lsreq_isRequestedLSAReceived (ptrOSPF_NEIGHBOR neigh) |
| |
| void | ospf_lsreq_send (ptrOSPF_PDS ospf, NETSIM_ID interfaceId, NETSIM_IPAddress nbrAddr, bool retx) |
| |
| void | ospf_lsreq_retransmit (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface, ptrOSPF_NEIGHBOR neigh, UINT seqNum) |
| |
| void | ospf_handle_LSRequest () |
| |
| void | ospf_spf_scheduleCalculation (ptrOSPF_PDS ospf) |
| |
| void | ospf_spf_handleCalculateSPFEvent () |
| |
| OSPFIFSTATE | ospf_DR_election (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface) |
| |
| bool | ospf_isMyAddr (NETSIM_ID d, NETSIM_IPAddress addr) |
| |
| NETSIM_ID | ospf_getInterfaceIdForNextHop (NETSIM_ID d, NETSIM_IPAddress addr) |
| |
| bool | isOSPFConfigured (NETSIM_ID d) |
| |
| char * | form_dlogId (char *name, NETSIM_ID d) |
| |
| bool | isOSPFSPFLog () |
| |
| bool | isOSPFHelloLog () |
| |
| void | print_ospf_log (OSPFLOGFLAG logFlag, char *format,...) |
| |
| void | print_ospf_Dlog (char *id, char *format,...) |
| |
| void | init_ospf_dlog (char *id, char *fileName) |
| |
| bool | ospf_dlog_isEnable (char *id) |
| |
| UINT64 | ospf_event_add_dbg (double time, NETSIM_ID d, NETSIM_ID in, int subevent, NetSim_PACKET *packet, void *eventData, int line, char *file) |
| |
| void | ospf_event_set (int subevent) |
| |
| void | ospf_event_set_and_call (int subevent, void *otherDetails) |
| |
| ptrOSPF_COST_LIST | fn_NetSim_App_Routing_Init (NETSIM_ID d, ptrOSPF_COST_LIST list) |
| |
| bool | get_ospf_log_status () |
| |