|
INET Framework for OMNeT++/OMNEST
|
#include <ansaLsa6.h>
Public Member Functions | |
| LinkLsa (void) | |
| LinkLsa (const OspfLinkLsa6 &lsa) | |
| LinkLsa (const LinkLsa &lsa) | |
| virtual | ~LinkLsa (void) |
| bool | Update (const OspfLinkLsa6 *lsa) |
| bool | DiffersFrom (const OspfLinkLsa6 *linkLsa) const |
Definition at line 152 of file ansaLsa6.h.
| AnsaOspf6::LinkLsa::LinkLsa | ( | void | ) | [inline] |
Definition at line 157 of file ansaLsa6.h.
: OspfLinkLsa6(), RoutingInfo(), LsaTrackingInfo() {}
| AnsaOspf6::LinkLsa::LinkLsa | ( | const OspfLinkLsa6 & | lsa | ) | [inline] |
Definition at line 158 of file ansaLsa6.h.
: OspfLinkLsa6(lsa), RoutingInfo(), LsaTrackingInfo() {}
| AnsaOspf6::LinkLsa::LinkLsa | ( | const LinkLsa & | lsa | ) | [inline] |
Definition at line 159 of file ansaLsa6.h.
: OspfLinkLsa6(lsa), RoutingInfo(lsa), LsaTrackingInfo(lsa) {}
| virtual AnsaOspf6::LinkLsa::~LinkLsa | ( | void | ) | [inline, virtual] |
Definition at line 160 of file ansaLsa6.h.
{}
| bool AnsaOspf6::LinkLsa::DiffersFrom | ( | const OspfLinkLsa6 * | linkLsa | ) | const |
Definition at line 30 of file ansaLsa6Type8Link.cc.
Referenced by Update().
{
const OspfLsaHeader6& lsaHeader = linkLsa->getHeader();
if (((header_var.getLsAge() == MAX_AGE) && (lsaHeader.getLsAge() != MAX_AGE))
|| ((header_var.getLsAge() != MAX_AGE) && (lsaHeader.getLsAge() == MAX_AGE))
|| (header_var.getAdvertisingRouter() != lsaHeader.getAdvertisingRouter())
|| (header_var.getLsSequenceNumber() != lsaHeader.getLsSequenceNumber())){
return true;
}else if (rtrPriority_var != linkLsa->getRtrPriority()){
return true;
}else if (options_var != linkLsa->getOptions()){
return true;
}else if (linkLocalAddress_var != linkLsa->getLinkLocalAddress()){
return true;
}else{
unsigned int prefixesCount = prefixes_arraysize;
for (unsigned int i = 0; i < prefixesCount; i++){
if (prefixes_var[i] != linkLsa->getPrefixes(i)){
return true;
}
}
}
return false;
}
| bool AnsaOspf6::LinkLsa::Update | ( | const OspfLinkLsa6 * | lsa | ) |
Definition at line 18 of file ansaLsa6Type8Link.cc.
{
bool different = DiffersFrom(lsa);
(*this) = (*lsa);
ResetInstallTime();
if (different){
ClearNextHops();
return true;
}else{
return false;
}
}