|
|
OSPFv3 only: Intra-Area-Prefix-LSA
IntraAreaPrefixLsa (OspfTypes::Version version)
| IntraAreaPrefixLsa |
IntraAreaPrefixLsa (OspfTypes::Version version, uint8_t *buf, size_t len)
| IntraAreaPrefixLsa |
size_t min_length ()
| min_length |
[const]
Returns: the minimum length of a Link-LSA.
Reimplemented from Lsa.
uint16_t get_ls_type ()
| get_ls_type |
[const]
Reimplemented from Lsa.
LsaRef decode (uint8_t *buf, size_t& len)
throw(InvalidPacket) | decode |
[const]
Decode an LSA.
Parameters:
buf | pointer to buffer. |
len | length of the buffer on input set to the number of bytes consumed on output. |
Returns: A reference to an LSA that manages its own memory.
Reimplemented from Lsa.
bool encode ()
| encode |
Reimplemented from Lsa.
void set_referenced_ls_type (uint16_t referenced_ls_type)
| set_referenced_ls_type |
uint16_t get_referenced_ls_type ()
| get_referenced_ls_type |
[const]
void set_referenced_link_state_id (uint32_t referenced_link_state_id)
| set_referenced_link_state_id |
uint32_t get_referenced_link_state_id ()
| get_referenced_link_state_id |
[const]
void set_referenced_advertising_router (uint32_t referenced_adv_router)
| set_referenced_advertising_router |
uint32_t get_referenced_advertising_router ()
| get_referenced_advertising_router |
[const]
list<IPv6Prefix>& get_prefixes ()
| get_prefixes |
uint32_t create_link_state_id (uint16_t ls_type, uint32_t interface_id)
| create_link_state_id |
[const]
Given a referenced LS type and an interface ID generate a candidate Link State ID for Intra-Area-Prefix-LSAs. This is *NOT* part of the protocol, just a way to create a unique mapping.
The underlying assumption is that for every area only one Intra-Area-Prefix-LSA will be generated per Router-LSA and Network-LSA. More importantly one Router-LSA will be generated per area although it is legal to generate many. The size of the Router-LSA is a function of the number of interfaces on the generating router and for the time being we only generate one Router-LSA. If the number of interfaces exceeds the capacity of a single Router-LSA then this method and the Router-LSA code will need to be re-visited.
const char * name ()
| name |
[const]
Printable name of this LSA.
Reimplemented from Lsa.
string str ()
| str |
[const]
Generate a printable representation.
Reimplemented from Lsa.