OpenSDN source code
|
#include <bgp_attr_base.h>
Public Types | |
enum | Flag { Optional = 1 << 7, Transitive = 1 << 6, Partial = 1 << 5, ExtendedLength = 1 << 4 } |
enum | Code { Reserved = 0, Origin = 1, AsPath = 2, NextHop = 3, MultiExitDisc = 4, LocalPref = 5, AtomicAggregate = 6, Aggregator = 7, Communities = 8, OriginatorId = 9, ClusterList = 10, MPReachNlri = 14, MPUnreachNlri = 15, ExtendedCommunities = 16, As4Path = 17, As4Aggregator = 18, PmsiTunnel = 22, McastEdgeDiscovery = 241, McastEdgeForwarding = 242, OriginVnPath = 243 } |
enum | Subcode { OList = 1, LabelBlock = 2, SourceRd = 3, Esi = 4, Params = 5, LeafOList = 6, SubProtocol = 7 } |
Public Member Functions | |
BgpAttribute () | |
BgpAttribute (uint8_t code, uint8_t flags) | |
BgpAttribute (uint8_t code, uint8_t subcode, uint8_t flags) | |
virtual size_t | EncodeLength () const |
uint8_t | GetEncodeFlags () const |
virtual std::string | ToString () const |
virtual int | CompareTo (const BgpAttribute &rhs) const |
virtual void | ToCanonical (BgpAttr *attr) |
![]() | |
virtual | ~ParseObject () |
Public Attributes | |
uint8_t | code |
uint8_t | subcode |
uint8_t | flags |
Static Public Attributes | |
static const uint8_t | FLAG_MASK = Optional|Transitive |
Definition at line 22 of file bgp_attr_base.h.
enum BgpAttribute::Code |
Definition at line 30 of file bgp_attr_base.h.
enum BgpAttribute::Flag |
Enumerator | |
---|---|
Optional | |
Transitive | |
Partial | |
ExtendedLength |
Definition at line 24 of file bgp_attr_base.h.
Enumerator | |
---|---|
OList | |
LabelBlock | |
SourceRd | |
Esi | |
Params | |
LeafOList | |
SubProtocol |
Definition at line 52 of file bgp_attr_base.h.
|
inline |
Definition at line 62 of file bgp_attr_base.h.
|
inline |
Definition at line 63 of file bgp_attr_base.h.
|
inline |
Definition at line 65 of file bgp_attr_base.h.
|
virtual |
Reimplemented in BgpAttrParams, BgpAttrSubProtocol, BgpAttrEsi, BgpAttrSourceRd, BgpOListSpec, BgpAttrLabelBlock, EdgeForwardingSpec, EdgeDiscoverySpec, As4PathSpec, PmsiTunnelSpec, BgpMpNlri, AsPath4ByteSpec, ClusterListSpec, BgpAttrOriginatorId, BgpAttr4ByteAggregator, BgpAttrAggregator, BgpAttrAs4Aggregator, ExtCommunitySpec, BgpAttrLocalPref, BgpAttrMultiExitDisc, BgpAttrNextHop, AsPathSpec, BgpAttrOrigin, CommunitySpec, and OriginVnPathSpec.
Definition at line 46 of file bgp_attr_base.cc.
|
virtual |
Reimplemented in EdgeForwardingSpec, EdgeDiscoverySpec, As4PathSpec, BgpMpNlri, AsPath4ByteSpec, ExtCommunitySpec, AsPathSpec, CommunitySpec, and OriginVnPathSpec.
Definition at line 53 of file bgp_attr_base.cc.
uint8_t BgpAttribute::GetEncodeFlags | ( | ) | const |
|
inlinevirtual |
Reimplemented in BgpAttrParams, BgpAttrSubProtocol, BgpAttrEsi, BgpAttrSourceRd, BgpOListSpec, BgpAttrLabelBlock, EdgeForwardingSpec, EdgeDiscoverySpec, As4PathSpec, PmsiTunnelSpec, BgpMpNlri, AsPath4ByteSpec, ClusterListSpec, BgpAttrOriginatorId, BgpAttr4ByteAggregator, BgpAttrAggregator, BgpAttrAs4Aggregator, ExtCommunitySpec, BgpAttrAtomicAggregate, BgpAttrLocalPref, BgpAttrMultiExitDisc, BgpAttrNextHop, AsPathSpec, BgpAttrOrigin, CommunitySpec, and OriginVnPathSpec.
Definition at line 83 of file bgp_attr_base.h.
|
virtual |
Reimplemented in BgpAttrParams, BgpAttrSubProtocol, BgpAttrEsi, BgpAttrSourceRd, BgpOListSpec, BgpAttrLabelBlock, EdgeForwardingSpec, EdgeDiscoverySpec, As4PathSpec, PmsiTunnelSpec, AsPath4ByteSpec, ClusterListSpec, BgpAttrOriginatorId, BgpAttr4ByteAggregator, BgpAttrAggregator, BgpAttrAs4Aggregator, ExtCommunitySpec, BgpAttrAtomicAggregate, BgpAttrLocalPref, BgpAttrMultiExitDisc, BgpAttrNextHop, AsPathSpec, BgpAttrOrigin, CommunitySpec, and OriginVnPathSpec.
Definition at line 65 of file bgp_attr_base.cc.
uint8_t BgpAttribute::code |
Definition at line 68 of file bgp_attr_base.h.
|
static |
Definition at line 67 of file bgp_attr_base.h.
uint8_t BgpAttribute::flags |
Definition at line 70 of file bgp_attr_base.h.
uint8_t BgpAttribute::subcode |
Definition at line 69 of file bgp_attr_base.h.