63 lines
1.2 KiB
Protocol Buffer
63 lines
1.2 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package api;
|
|
|
|
option go_package = "github.com/osrg/gobgp/v4/api;api";
|
|
|
|
// Common types for pretty much everywhere
|
|
|
|
message Family {
|
|
enum Afi {
|
|
AFI_UNSPECIFIED = 0;
|
|
AFI_IP = 1;
|
|
AFI_IP6 = 2;
|
|
AFI_L2VPN = 25;
|
|
AFI_LS = 16388;
|
|
AFI_OPAQUE = 16397;
|
|
}
|
|
|
|
enum Safi {
|
|
SAFI_UNSPECIFIED = 0;
|
|
SAFI_UNICAST = 1;
|
|
SAFI_MULTICAST = 2;
|
|
SAFI_MPLS_LABEL = 4;
|
|
SAFI_ENCAPSULATION = 7;
|
|
SAFI_VPLS = 65;
|
|
SAFI_EVPN = 70;
|
|
SAFI_LS = 71;
|
|
SAFI_SR_POLICY = 73;
|
|
SAFI_MUP = 85;
|
|
SAFI_MPLS_VPN = 128;
|
|
SAFI_MPLS_VPN_MULTICAST = 129;
|
|
SAFI_ROUTE_TARGET_CONSTRAINTS = 132;
|
|
SAFI_FLOW_SPEC_UNICAST = 133;
|
|
SAFI_FLOW_SPEC_VPN = 134;
|
|
SAFI_KEY_VALUE = 241;
|
|
}
|
|
|
|
Afi afi = 1;
|
|
Safi safi = 2;
|
|
}
|
|
|
|
message RouteDistinguisherTwoOctetASN {
|
|
uint32 admin = 1;
|
|
uint32 assigned = 2;
|
|
}
|
|
|
|
message RouteDistinguisherIPAddress {
|
|
string admin = 1;
|
|
uint32 assigned = 2;
|
|
}
|
|
|
|
message RouteDistinguisherFourOctetASN {
|
|
uint32 admin = 1;
|
|
uint32 assigned = 2;
|
|
}
|
|
|
|
message RouteDistinguisher {
|
|
oneof rd {
|
|
RouteDistinguisherTwoOctetASN two_octet_asn = 1;
|
|
RouteDistinguisherIPAddress ip_address = 2;
|
|
RouteDistinguisherFourOctetASN four_octet_asn = 3;
|
|
}
|
|
}
|