NetSim Source Code Help
Loading...
Searching...
No Matches
OSPF_LSA.c File Reference
#include "main.h"
#include "NetSim_utility.h"
#include "OSPF.h"
#include "OSPF_enum.h"
#include "OSPF_Msg.h"
#include "OSPF_Neighbor.h"
#include "OSPF_Interface.h"
#include "OSPF_RoutingTable.h"
#include "OSPF_List.h"
Include dependency graph for OSPF_LSA.c:

Go to the source code of this file.

Functions

static void ospf_lsa_printHdr (char *logid, ptrOSPFLSAHDR LSHeader)
 
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 OSPFLSAINFO_FREE (ptrOSPFLSAHDR lsa)
 
void * OSPFLSAINFO_COPY (ptrOSPFLSAHDR lsa)
 
void OSPF_LSA_MSG_FREE (ptrOSPFLSAHDR hdr)
 
ptrOSPFLSAHDR OSPF_LSA_MSG_COPY (ptrOSPFLSAHDR hdr)
 
ptrOSPFLSAHDR OSPF_LSA_HDR_COPY (ptrOSPFLSAHDR lsa)
 
void OSPF_LSA_HDR_FREE (ptrOSPFLSAHDR lsa)
 
ptrOSPFLSAHDR ospf_lsa_find_old_lsa (ptrOSPFLIST list, OSPFID rid, OSPFID lid)
 
bool ospf_lsa_update_lsahdr (ptrOSPF_PDS ospf, ptrOSPFAREA_DS area, ptrOSPFLSAHDR lsa, ptrOSPFLSAHDR old, LSTYPE lstype)
 
void ospf_lsahdr_add_lsa (ptrOSPFLSAHDR lhdr, void *lsa, UINT16 len)
 
static void ospf_lsa_removeFromRxtList (ptrOSPF_PDS ospf, OSPFID area, ptrOSPFLSAHDR lsa)
 
bool ospf_lsa_checkForDoNotAge (ptrOSPF_PDS ospf, UINT16 routerLSAAge)
 
UINT16 ospf_lsa_maskDoNotAge (ptrOSPF_PDS ospf, UINT16 routerLSAAge)
 
void ospf_lsa_assignNewLSAge (ptrOSPF_PDS ospf, UINT16 *routerLSAAge, UINT16 newLSAAge)
 
static INT16 ospf_lsa_DiffOfAge (ptrOSPF_PDS ospf, UINT16 a1, UINT16 a2)
 
int ospf_lsa_compare (ptrOSPF_PDS ospf, ptrOSPFLSAHDR oldLS, ptrOSPFLSAHDR newLS)
 
bool ospf_lsa_compareToListMem (ptrOSPF_PDS ospf, ptrOSPFLSAHDR oldLS, ptrOSPFLSAHDR newLS)
 
void ospf_lsa_queueToFlood (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface, ptrOSPFLSAHDR lsa)
 
bool ospf_lsa_flood (ptrOSPF_PDS pds, OSPFID area, ptrOSPFLSAHDR lsa, NETSIM_IPAddress srcAddr, NETSIM_ID in)
 
static bool ospf_lsa_isBodyChanged (ptrOSPFLSAHDR newLSA, ptrOSPFLSAHDR oldLSA)
 
bool ospf_lsa_is_content_changed (ptrOSPF_PDS ospf, ptrOSPFLSAHDR newLSA, ptrOSPFLSAHDR oldLSA)
 
void ospf_lsa_assignNewLSAIntoLSOrigin (ptrOSPF_PDS ospf, ptrOSPFLSAHDR LSA, ptrOSPFLSAHDR newLSA)
 
bool ospf_lsa_hasMaxAge (ptrOSPF_PDS ospf, ptrOSPFLSAHDR lsa)
 
static bool ospf_lsa_isPresentInMaxAgeList (ptrOSPF_PDS ospf, ptrOSPFLIST list, ptrOSPFLSAHDR lsa)
 
void ospf_lsa_addToMaxAgeLSAList (ptrOSPF_PDS ospf, OSPFID areaId, ptrOSPFLSAHDR lsa)
 
void ospf_lsa_ScheduleLSDB ()
 
void ospf_lsa_handle_floodTimer_event ()
 
int ospf_lsa_isMoreRecent (ptrOSPF_PDS ospf, ptrOSPFLSAHDR newLSA, ptrOSPFLSAHDR oldLSA)
 
bool ospf_lsa_isSelfOriginated (ptrOSPF_PDS ospf, ptrOSPFLSAHDR lsa)
 
void ospf_lsa_flush (ptrOSPF_PDS ospf, ptrOSPFAREA_DS area, ptrOSPFLSAHDR lsa)
 
void ospf_lsa_schedule (ptrOSPF_PDS ospf, ptrOSPF_IF thisInterface, ptrOSPFAREA_DS area, ptrOSPFLSAHDR lsa)
 
static bool ospf_nwlsa_hasLink (ptrOSPF_PDS ospf, ptrOSPFLSAHDR wlsa, ptrOSPFLSAHDR vlsa)
 
bool ospf_lsa_hasLink (ptrOSPF_PDS ospf, ptrOSPFLSAHDR wlsa, ptrOSPFLSAHDR vlsa)
 

Function Documentation

◆ ospf_lsa_addToMaxAgeLSAList()

void ospf_lsa_addToMaxAgeLSAList ( ptrOSPF_PDS  ospf,
OSPFID  areaId,
ptrOSPFLSAHDR  lsa 
)

Definition at line 681 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_assignNewLSAge()

void ospf_lsa_assignNewLSAge ( ptrOSPF_PDS  ospf,
UINT16 routerLSAAge,
UINT16  newLSAAge 
)

Definition at line 379 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_assignNewLSAIntoLSOrigin()

void ospf_lsa_assignNewLSAIntoLSOrigin ( ptrOSPF_PDS  ospf,
ptrOSPFLSAHDR  LSA,
ptrOSPFLSAHDR  newLSA 
)

Definition at line 639 of file OSPF_LSA.c.

Here is the caller graph for this function:

◆ ospf_lsa_checkForDoNotAge()

bool ospf_lsa_checkForDoNotAge ( ptrOSPF_PDS  ospf,
UINT16  routerLSAAge 
)

Definition at line 354 of file OSPF_LSA.c.

Here is the caller graph for this function:

◆ ospf_lsa_compare()

int ospf_lsa_compare ( ptrOSPF_PDS  ospf,
ptrOSPFLSAHDR  oldLS,
ptrOSPFLSAHDR  newLS 
)

RFC 2328: Section 13.1

Definition at line 403 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_compareToListMem()

bool ospf_lsa_compareToListMem ( ptrOSPF_PDS  ospf,
ptrOSPFLSAHDR  oldLS,
ptrOSPFLSAHDR  newLS 
)

Definition at line 437 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_DiffOfAge()

static INT16 ospf_lsa_DiffOfAge ( ptrOSPF_PDS  ospf,
UINT16  a1,
UINT16  a2 
)
static

Definition at line 393 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_find_old_lsa()

ptrOSPFLSAHDR ospf_lsa_find_old_lsa ( ptrOSPFLIST  list,
OSPFID  rid,
OSPFID  lid 
)

Definition at line 258 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_flood()

bool ospf_lsa_flood ( ptrOSPF_PDS  pds,
OSPFID  area,
ptrOSPFLSAHDR  lsa,
NETSIM_IPAddress  srcAddr,
NETSIM_ID  in 
)

Definition at line 474 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_flush()

void ospf_lsa_flush ( ptrOSPF_PDS  ospf,
ptrOSPFAREA_DS  area,
ptrOSPFLSAHDR  lsa 
)

Definition at line 745 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_handle_floodTimer_event()

void ospf_lsa_handle_floodTimer_event ( )

Definition at line 716 of file OSPF_LSA.c.

Here is the call graph for this function:

◆ ospf_lsa_hasLink()

bool ospf_lsa_hasLink ( ptrOSPF_PDS  ospf,
ptrOSPFLSAHDR  wlsa,
ptrOSPFLSAHDR  vlsa 
)

Definition at line 811 of file OSPF_LSA.c.

Here is the call graph for this function:

◆ ospf_lsa_hasMaxAge()

bool ospf_lsa_hasMaxAge ( ptrOSPF_PDS  ospf,
ptrOSPFLSAHDR  lsa 
)

Definition at line 654 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OSPF_LSA_HDR_COPY()

ptrOSPFLSAHDR OSPF_LSA_HDR_COPY ( ptrOSPFLSAHDR  lsa)

Definition at line 245 of file OSPF_LSA.c.

Here is the caller graph for this function:

◆ OSPF_LSA_HDR_FREE()

void OSPF_LSA_HDR_FREE ( ptrOSPFLSAHDR  lsa)

Definition at line 253 of file OSPF_LSA.c.

Here is the caller graph for this function:

◆ ospf_lsa_is_content_changed()

bool ospf_lsa_is_content_changed ( ptrOSPF_PDS  ospf,
ptrOSPFLSAHDR  newLSA,
ptrOSPFLSAHDR  oldLSA 
)

Definition at line 617 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_isBodyChanged()

static bool ospf_lsa_isBodyChanged ( ptrOSPFLSAHDR  newLSA,
ptrOSPFLSAHDR  oldLSA 
)
static

Definition at line 595 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_isMoreRecent()

int ospf_lsa_isMoreRecent ( ptrOSPF_PDS  ospf,
ptrOSPFLSAHDR  newLSA,
ptrOSPFLSAHDR  oldLSA 
)

Definition at line 725 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_isPresentInMaxAgeList()

static bool ospf_lsa_isPresentInMaxAgeList ( ptrOSPF_PDS  ospf,
ptrOSPFLIST  list,
ptrOSPFLSAHDR  lsa 
)
static

Definition at line 660 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_isSelfOriginated()

bool ospf_lsa_isSelfOriginated ( ptrOSPF_PDS  ospf,
ptrOSPFLSAHDR  lsa 
)

Definition at line 734 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_maskDoNotAge()

UINT16 ospf_lsa_maskDoNotAge ( ptrOSPF_PDS  ospf,
UINT16  routerLSAAge 
)

Definition at line 370 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OSPF_LSA_MSG_COPY()

ptrOSPFLSAHDR OSPF_LSA_MSG_COPY ( ptrOSPFLSAHDR  hdr)

Definition at line 237 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OSPF_LSA_MSG_FREE()

void OSPF_LSA_MSG_FREE ( ptrOSPFLSAHDR  hdr)

Definition at line 231 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_print()

void ospf_lsa_print ( char *  logid,
ptrOSPFLSAHDR  LSHeader,
char *  msg 
)

Definition at line 38 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_printHdr()

static void ospf_lsa_printHdr ( char *  logid,
ptrOSPFLSAHDR  LSHeader 
)
static

Definition at line 24 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_printList()

void ospf_lsa_printList ( char *  logid,
ptrOSPFLIST  list,
char *  name 
)

Definition at line 61 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_queueToFlood()

void ospf_lsa_queueToFlood ( ptrOSPF_PDS  ospf,
ptrOSPF_IF  thisInterface,
ptrOSPFLSAHDR  lsa 
)

Definition at line 449 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_removeFromRxtList()

static void ospf_lsa_removeFromRxtList ( ptrOSPF_PDS  ospf,
OSPFID  area,
ptrOSPFLSAHDR  lsa 
)
static

Definition at line 316 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_schedule()

void ospf_lsa_schedule ( ptrOSPF_PDS  ospf,
ptrOSPF_IF  thisInterface,
ptrOSPFAREA_DS  area,
ptrOSPFLSAHDR  lsa 
)

Definition at line 759 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_schedule_routerLSA()

void ospf_lsa_schedule_routerLSA ( ptrOSPF_PDS  ospf,
ptrOSPFAREA_DS  area,
bool  isFlush 
)

Definition at line 81 of file OSPF_LSA.c.

Here is the caller graph for this function:

◆ ospf_lsa_ScheduleLSDB()

void ospf_lsa_ScheduleLSDB ( )

Definition at line 699 of file OSPF_LSA.c.

Here is the call graph for this function:

◆ ospf_lsa_scheduleNWLSA()

void ospf_lsa_scheduleNWLSA ( ptrOSPF_PDS  ospf,
ptrOSPF_IF  thisInterface,
ptrOSPFAREA_DS  area,
bool  isFlush 
)

Definition at line 114 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsa_scheduleSummaryLSA()

void ospf_lsa_scheduleSummaryLSA ( ptrOSPF_PDS  ospf,
ptrOSPF_IF  thisInterface,
ptrOSPFAREA_DS  area,
NETSIM_IPAddress  destAddr,
NETSIM_IPAddress  destMask,
OSPFDESTTYPE  destType,
bool  isFlush 
)

Definition at line 167 of file OSPF_LSA.c.

Here is the caller graph for this function:

◆ ospf_lsa_update_lsahdr()

bool ospf_lsa_update_lsahdr ( ptrOSPF_PDS  ospf,
ptrOSPFAREA_DS  area,
ptrOSPFLSAHDR  lsa,
ptrOSPFLSAHDR  old,
LSTYPE  lstype 
)

Definition at line 277 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ospf_lsahdr_add_lsa()

void ospf_lsahdr_add_lsa ( ptrOSPFLSAHDR  lhdr,
void *  lsa,
UINT16  len 
)

Definition at line 308 of file OSPF_LSA.c.

Here is the caller graph for this function:

◆ ospf_nwlsa_hasLink()

static bool ospf_nwlsa_hasLink ( ptrOSPF_PDS  ospf,
ptrOSPFLSAHDR  wlsa,
ptrOSPFLSAHDR  vlsa 
)
static

Definition at line 802 of file OSPF_LSA.c.

Here is the caller graph for this function:

◆ OSPFLSAINFO_COPY()

void * OSPFLSAINFO_COPY ( ptrOSPFLSAHDR  lsa)

Definition at line 212 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OSPFLSAINFO_FREE()

void OSPFLSAINFO_FREE ( ptrOSPFLSAHDR  lsa)

Definition at line 194 of file OSPF_LSA.c.

Here is the call graph for this function:
Here is the caller graph for this function: