class LsaDecoder

LSA byte streams are decoded through this class. More...

 
LOGO
 Annotated List  Files  Globals  Hierarchy  Index  Top

Public Methods


Detailed Description

LSA byte streams are decoded through this class.

 LsaDecoder (OspfTypes::Version version)

LsaDecoder

 ~LsaDecoder ()

~LsaDecoder

void  register_decoder (Lsa *lsa)

register_decoder

Register the LSA decoders, called multiple times with each LSA.

Parameters:

LSAdecoder
void  register_unknown_decoder (Lsa *lsa)

register_unknown_decoder

Register the unknown LSA decoder, called once.

Parameters:

LSAdecoder
Lsa::LsaRef  decode (uint8_t *ptr, size_t& len)
throw(InvalidPacket)

decode

[const]

Decode an LSA.

Parameters:

bufpointer to buffer.
lenlength 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.

size_t  min_length ()

min_length

[const]

Returns: The length of the smallest LSA that can be decoded.

bool  validate (uint16_t type)

validate

[const]

Validate type field. If we know how to decode an LSA of this type we must know how to process it.

Returns: true if we know about this type of LSA.

bool  external (uint16_t type)

external

Is an LSA of this type an AS-external-LSA?

Returns: true if this type is an AS-external-LSA

const char * name (uint16_t type)

name

[const]

Return the name of this LSA.

OspfTypes::Version  get_version ()

get_version

[const]


Generated by: pavlin on possum.icir.org on Wed Mar 21 11:23:58 2007, using kdoc $.