|
OpenSDN source code
|
#include <bgp_aspath.h>


Classes | |
| struct | PathSegment |
Public Member Functions | |
| As4PathSpec () | |
| As4PathSpec (const BgpAttribute &rhs) | |
| As4PathSpec (const As4PathSpec &rhs) | |
| ~As4PathSpec () | |
| as_t | AsLeftMost () const |
| bool | AsLeftMostMatch (as_t as) const |
| as_t | AsLeftMostPublic () const |
| bool | AsPathLoop (as_t as, uint8_t max_loop_count=0) const |
| virtual int | CompareTo (const BgpAttribute &rhs_attr) const |
| virtual void | ToCanonical (BgpAttr *attr) |
| virtual size_t | EncodeLength () const |
| virtual std::string | ToString () const |
| As4PathSpec * | Add (as_t asn) const |
| As4PathSpec * | Add (const std::vector< as_t > &asn_list) const |
| As4PathSpec * | Replace (as_t old_asn, as_t asn) const |
| As4PathSpec * | RemovePrivate (bool all, as_t asn, as_t peer_as) const |
Public Member Functions inherited from BgpAttribute | |
| BgpAttribute () | |
| BgpAttribute (uint8_t code, uint8_t flags) | |
| BgpAttribute (uint8_t code, uint8_t subcode, uint8_t flags) | |
| uint8_t | GetEncodeFlags () const |
Public Member Functions inherited from ParseObject | |
| virtual | ~ParseObject () |
Static Public Member Functions | |
| static bool | AsIsPrivate (as_t as) |
Public Attributes | |
| std::vector< PathSegment * > | path_segments |
Public Attributes inherited from BgpAttribute | |
| uint8_t | code |
| uint8_t | subcode |
| uint8_t | flags |
Static Public Attributes | |
| static const int | kSize = -1 |
| static const uint8_t | kFlags = Transitive|Optional |
| static const as_t | kMinPrivateAs = 64512 |
| static const as_t | kMaxPrivateAs = 65534 |
| static const as_t | kMinPrivateAs4 = 4200000000 |
| static const as_t | kMaxPrivateAs4 = 4294967294 |
Static Public Attributes inherited from BgpAttribute | |
| static const uint8_t | FLAG_MASK = Optional|Transitive |
Additional Inherited Members | |
Public Types inherited from BgpAttribute | |
| 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 , LargeCommunities = 32 , McastEdgeDiscovery = 241 , McastEdgeForwarding = 242 , OriginVnPath = 243 } |
| enum | Subcode { OList = 1 , LabelBlock = 2 , SourceRd = 3 , Esi = 4 , Params = 5 , LeafOList = 6 , SubProtocol = 7 } |
Definition at line 341 of file bgp_aspath.h.
|
inline |
Definition at line 349 of file bgp_aspath.h.
|
inlineexplicit |
Definition at line 350 of file bgp_aspath.h.
|
inlineexplicit |
Definition at line 351 of file bgp_aspath.h.
|
inline |
| As4PathSpec * As4PathSpec::Add | ( | as_t | asn | ) | const |
Definition at line 618 of file bgp_aspath.cc.
| As4PathSpec* As4PathSpec::Add | ( | const std::vector< as_t > & | asn_list | ) | const |
|
inlinestatic |
Definition at line 381 of file bgp_aspath.h.
| as_t As4PathSpec::AsLeftMost | ( | ) | const |
Definition at line 509 of file bgp_aspath.cc.
| bool As4PathSpec::AsLeftMostMatch | ( | as_t | as | ) | const |
Definition at line 522 of file bgp_aspath.cc.
| as_t As4PathSpec::AsLeftMostPublic | ( | ) | const |
| bool As4PathSpec::AsPathLoop | ( | as_t | as, |
| uint8_t | max_loop_count = 0 |
||
| ) | const |
Definition at line 602 of file bgp_aspath.cc.
|
virtual |
Reimplemented from BgpAttribute.
Definition at line 544 of file bgp_aspath.cc.

|
virtual |
Reimplemented from BgpAttribute.
Definition at line 589 of file bgp_aspath.cc.
| As4PathSpec * As4PathSpec::RemovePrivate | ( | bool | all, |
| as_t | asn, | ||
| as_t | peer_as | ||
| ) | const |
| As4PathSpec * As4PathSpec::Replace | ( | as_t | old_asn, |
| as_t | asn | ||
| ) | const |
|
virtual |
Reimplemented from BgpAttribute.
Definition at line 557 of file bgp_aspath.cc.

|
virtual |
Reimplemented from BgpAttribute.
Definition at line 561 of file bgp_aspath.cc.
|
static |
Definition at line 343 of file bgp_aspath.h.
|
static |
Definition at line 345 of file bgp_aspath.h.
|
static |
Definition at line 347 of file bgp_aspath.h.
|
static |
Definition at line 344 of file bgp_aspath.h.
|
static |
Definition at line 346 of file bgp_aspath.h.
|
static |
Definition at line 342 of file bgp_aspath.h.
| std::vector<PathSegment *> As4PathSpec::path_segments |
Definition at line 395 of file bgp_aspath.h.