LinkLsa Class Reference

OSPFv3 only: Link-LSA. More...

#include <lsa.hh>

Inheritance diagram for LinkLsa:

List of all members.

Public Member Functions

 LinkLsa (OspfTypes::Version version)
 LinkLsa (OspfTypes::Version version, uint8_t *buf, size_t len)
size_t min_length () const
uint16_t get_ls_type () const
 It is the responsibilty of the derived type to return this information.
LsaRef decode (uint8_t *buf, size_t &len) const throw (InvalidPacket)
 Decode an LSA.
bool encode ()
 Encode an LSA for transmission.
void set_rtr_priority (uint8_t rtr_priority)
uint8_t get_rtr_priority () const
void set_options (uint32_t options)
uint32_t get_options () const
void set_link_local_address (IPv6 link_local_address)
IPv6 get_link_local_address () const
const list< IPv6Prefix > & get_prefixes () const
list< IPv6Prefix > & get_prefixes ()
const char * name () const
 Printable name of this LSA.
string str () const
 Generate a printable representation.

Private Attributes

uint8_t _rtr_priority
uint32_t _options
IPv6 _link_local_address
list< IPv6Prefix_prefixes

Detailed Description

OSPFv3 only: Link-LSA.

Member Function Documentation

Lsa::LsaRef LinkLsa::decode ( uint8_t *  buf,
size_t &  len 
) const throw (InvalidPacket) [virtual]

Decode an LSA.

bufpointer to buffer.
lenlength of the buffer on input set to the number of bytes consumed on output.
A reference to an LSA that manages its own memory.

Implements Lsa.

bool LinkLsa::encode ( ) [virtual]

Encode an LSA for transmission.

True on success.

Implements Lsa.

uint16_t LinkLsa::get_ls_type ( ) const [inline, virtual]

It is the responsibilty of the derived type to return this information.

The type this lsa represents.

Implements Lsa.

size_t LinkLsa::min_length ( ) const [inline, virtual]
the minimum length of a Link-LSA.

Implements Lsa.

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations