RFC 2470 A.4.1 IPv6 Prefix Representation OSPFv3 only.
More...
#include <lsa.hh>
List of all members.
Public Member Functions |
|
| IPv6Prefix (OspfTypes::Version version, bool use_metric=false) |
|
| IPv6Prefix (const IPv6Prefix &rhs) |
|
IPv6Prefix | operator= (const IPv6Prefix &rhs) |
|
void | copy (const IPv6Prefix &rhs) |
| size_t | length () const |
| IPv6Prefix | decode (uint8_t *ptr, size_t &len, uint8_t prefixlen, uint8_t option) const throw (InvalidPacket) |
| | Decode a IPv6Prefix.
|
| size_t | copy_out (uint8_t *to_uint8) const |
| | Copy a wire format representation to the pointer provided.
|
|
OspfTypes::Version | get_version () const |
|
void | set_network (const IPNet< IPv6 > &network) |
|
IPNet< IPv6 > | get_network () const |
|
bool | use_metric () const |
|
void | set_metric (uint16_t metric) |
|
uint16_t | get_metric () const |
|
void | set_prefix_options (uint8_t prefix_options) |
|
uint8_t | get_prefix_options () const |
|
void | set_bit (bool set, uint8_t bit) |
|
bool | get_bit (uint8_t bit) const |
|
void | set_nu_bit (bool set) |
|
bool | get_nu_bit () const |
|
void | set_la_bit (bool set) |
|
bool | get_la_bit () const |
|
void | set_mc_bit (bool set) |
|
bool | get_mc_bit () const |
|
void | set_p_bit (bool set) |
|
bool | get_p_bit () const |
|
void | set_dn_bit (bool set) |
|
bool | get_dn_bit () const |
|
string | str () const |
| | Generate a printable representation.
|
Static Public Member Functions |
| static size_t | bytes_per_prefix (uint8_t prefix) |
Static Public Attributes |
|
static const uint8_t | NU_bit = 0x1 |
|
static const uint8_t | LA_bit = 0x2 |
|
static const uint8_t | MC_bit = 0x4 |
|
static const uint8_t | P_bit = 0x8 |
|
static const uint8_t | DN_bit = 0x10 |
Private Attributes |
|
const OspfTypes::Version | _version |
|
const bool | _use_metric |
|
IPNet< IPv6 > | _network |
|
uint16_t | _metric |
|
uint8_t | _prefix_options |
Detailed Description
RFC 2470 A.4.1 IPv6 Prefix Representation OSPFv3 only.
Member Function Documentation
| static size_t IPv6Prefix::bytes_per_prefix |
( |
uint8_t |
prefix | ) |
[inline, static] |
- Returns:
- Number of bytes that will be occupied by this prefix.
| size_t IPv6Prefix::copy_out |
( |
uint8_t * |
to_uint8 | ) |
const |
Copy a wire format representation to the pointer provided.
The caller should have called length() to pre-allocate the space required.
length() should be called by the caller to verify enough space is available.
- Returns:
- the number of bytes written.
| IPv6Prefix IPv6Prefix::decode |
( |
uint8_t * |
ptr, |
|
|
size_t & |
len, |
|
|
uint8_t |
prefixlen, |
|
|
uint8_t |
option |
|
) |
| const throw (InvalidPacket) |
Decode a IPv6Prefix.
- Parameters:
-
| buf | pointer to buffer. |
| len | length of the buffer on input set to the number of bytes consumed on output. |
| prefixlen | prefix length |
| option | prefix option |
- Returns:
- A IPv6Prefix.
| size_t IPv6Prefix::length |
( |
| ) |
const |
- Returns:
- the number of bytes the encoded data will occupy.
The documentation for this class was generated from the following files:
- /home/greearb/git/xorp.ct.github/xorp/ospf/lsa.hh
- /home/greearb/git/xorp.ct.github/xorp/ospf/lsa.cc