summaryrefslogtreecommitdiffhomepage
path: root/api
diff options
context:
space:
mode:
Diffstat (limited to 'api')
-rw-r--r--api/gobgp.pb.go784
-rw-r--r--api/gobgp.proto216
2 files changed, 26 insertions, 974 deletions
diff --git a/api/gobgp.pb.go b/api/gobgp.pb.go
index 99973473..5c332c6f 100644
--- a/api/gobgp.pb.go
+++ b/api/gobgp.pb.go
@@ -16,23 +16,9 @@ It has these top-level messages:
MrtArguments
ModVrfArguments
AddressFamily
- RouteDistinguisher
GracefulRestartTuple
GracefulRestart
Capability
- Aggregator
- ExtendedCommunity
- EVPNNlri
- EvpnMacIpAdvertisement
- EvpnInclusiveMulticastEthernetTag
- RTNlri
- VPNNlri
- Nlri
- TunnelEncapSubTLV
- TunnelEncapTLV
- PmsiTunnel
- PathAttr
- AsPath
Path
Destination
PeerConf
@@ -213,29 +199,6 @@ func (x SAFI) String() string {
return proto.EnumName(SAFI_name, int32(x))
}
-type ROUTE_DISTINGUISHER_TYPE int32
-
-const (
- ROUTE_DISTINGUISHER_TYPE_TWO_OCTET_AS ROUTE_DISTINGUISHER_TYPE = 0
- ROUTE_DISTINGUISHER_TYPE_IP4 ROUTE_DISTINGUISHER_TYPE = 1
- ROUTE_DISTINGUISHER_TYPE_FOUR_OCTET_AS ROUTE_DISTINGUISHER_TYPE = 2
-)
-
-var ROUTE_DISTINGUISHER_TYPE_name = map[int32]string{
- 0: "TWO_OCTET_AS",
- 1: "IP4",
- 2: "FOUR_OCTET_AS",
-}
-var ROUTE_DISTINGUISHER_TYPE_value = map[string]int32{
- "TWO_OCTET_AS": 0,
- "IP4": 1,
- "FOUR_OCTET_AS": 2,
-}
-
-func (x ROUTE_DISTINGUISHER_TYPE) String() string {
- return proto.EnumName(ROUTE_DISTINGUISHER_TYPE_name, int32(x))
-}
-
type BGP_CAPABILITY int32
const (
@@ -274,231 +237,6 @@ func (x BGP_CAPABILITY) String() string {
return proto.EnumName(BGP_CAPABILITY_name, int32(x))
}
-type Origin int32
-
-const (
- Origin_IGP Origin = 0
- Origin_EGP Origin = 1
- Origin_INCOMPLETE Origin = 2
-)
-
-var Origin_name = map[int32]string{
- 0: "IGP",
- 1: "EGP",
- 2: "INCOMPLETE",
-}
-var Origin_value = map[string]int32{
- "IGP": 0,
- "EGP": 1,
- "INCOMPLETE": 2,
-}
-
-func (x Origin) String() string {
- return proto.EnumName(Origin_name, int32(x))
-}
-
-type TUNNEL_TYPE int32
-
-const (
- TUNNEL_TYPE_UNKNOWN_TUNNEL_TYPE TUNNEL_TYPE = 0
- TUNNEL_TYPE_L2TPV3_OVER_IP TUNNEL_TYPE = 1
- TUNNEL_TYPE_GRE TUNNEL_TYPE = 2
- TUNNEL_TYPE_IP_IN_IP TUNNEL_TYPE = 7
- TUNNEL_TYPE_VXLAN TUNNEL_TYPE = 8
- TUNNEL_TYPE_NVGRE TUNNEL_TYPE = 9
- TUNNEL_TYPE_MPLS TUNNEL_TYPE = 10
- TUNNEL_TYPE_MPLS_IN_GRE TUNNEL_TYPE = 11
- TUNNEL_TYPE_VXLAN_GRE TUNNEL_TYPE = 12
-)
-
-var TUNNEL_TYPE_name = map[int32]string{
- 0: "UNKNOWN_TUNNEL_TYPE",
- 1: "L2TPV3_OVER_IP",
- 2: "GRE",
- 7: "IP_IN_IP",
- 8: "VXLAN",
- 9: "NVGRE",
- 10: "MPLS",
- 11: "MPLS_IN_GRE",
- 12: "VXLAN_GRE",
-}
-var TUNNEL_TYPE_value = map[string]int32{
- "UNKNOWN_TUNNEL_TYPE": 0,
- "L2TPV3_OVER_IP": 1,
- "GRE": 2,
- "IP_IN_IP": 7,
- "VXLAN": 8,
- "NVGRE": 9,
- "MPLS": 10,
- "MPLS_IN_GRE": 11,
- "VXLAN_GRE": 12,
-}
-
-func (x TUNNEL_TYPE) String() string {
- return proto.EnumName(TUNNEL_TYPE_name, int32(x))
-}
-
-type PMSI_TUNNEL_TYPE int32
-
-const (
- PMSI_TUNNEL_TYPE_NO_TUNNEL PMSI_TUNNEL_TYPE = 0
- PMSI_TUNNEL_TYPE_RSVP_TE_P2MP PMSI_TUNNEL_TYPE = 1
- PMSI_TUNNEL_TYPE_MLDP_P2MP PMSI_TUNNEL_TYPE = 2
- PMSI_TUNNEL_TYPE_PIM_SSM_TREE PMSI_TUNNEL_TYPE = 3
- PMSI_TUNNEL_TYPE_PIM_SM_TREE PMSI_TUNNEL_TYPE = 4
- PMSI_TUNNEL_TYPE_BIDIR_PIM_TREE PMSI_TUNNEL_TYPE = 5
- PMSI_TUNNEL_TYPE_INGRESS_REPL PMSI_TUNNEL_TYPE = 6
- PMSI_TUNNEL_TYPE_MLDP_MP2MP PMSI_TUNNEL_TYPE = 7
-)
-
-var PMSI_TUNNEL_TYPE_name = map[int32]string{
- 0: "NO_TUNNEL",
- 1: "RSVP_TE_P2MP",
- 2: "MLDP_P2MP",
- 3: "PIM_SSM_TREE",
- 4: "PIM_SM_TREE",
- 5: "BIDIR_PIM_TREE",
- 6: "INGRESS_REPL",
- 7: "MLDP_MP2MP",
-}
-var PMSI_TUNNEL_TYPE_value = map[string]int32{
- "NO_TUNNEL": 0,
- "RSVP_TE_P2MP": 1,
- "MLDP_P2MP": 2,
- "PIM_SSM_TREE": 3,
- "PIM_SM_TREE": 4,
- "BIDIR_PIM_TREE": 5,
- "INGRESS_REPL": 6,
- "MLDP_MP2MP": 7,
-}
-
-func (x PMSI_TUNNEL_TYPE) String() string {
- return proto.EnumName(PMSI_TUNNEL_TYPE_name, int32(x))
-}
-
-type EVPN_TYPE int32
-
-const (
- EVPN_TYPE_UNKNOWN_EVPN_TYPE EVPN_TYPE = 0
- EVPN_TYPE_ROUTE_TYPE_ETHERNET_AUTO_DISCOVERY EVPN_TYPE = 1
- EVPN_TYPE_ROUTE_TYPE_MAC_IP_ADVERTISEMENT EVPN_TYPE = 2
- EVPN_TYPE_INCLUSIVE_MULTICAST_ETHERNET_TAG EVPN_TYPE = 3
- EVPN_TYPE_ETHERNET_SEGMENT_ROUTE EVPN_TYPE = 4
-)
-
-var EVPN_TYPE_name = map[int32]string{
- 0: "UNKNOWN_EVPN_TYPE",
- 1: "ROUTE_TYPE_ETHERNET_AUTO_DISCOVERY",
- 2: "ROUTE_TYPE_MAC_IP_ADVERTISEMENT",
- 3: "INCLUSIVE_MULTICAST_ETHERNET_TAG",
- 4: "ETHERNET_SEGMENT_ROUTE",
-}
-var EVPN_TYPE_value = map[string]int32{
- "UNKNOWN_EVPN_TYPE": 0,
- "ROUTE_TYPE_ETHERNET_AUTO_DISCOVERY": 1,
- "ROUTE_TYPE_MAC_IP_ADVERTISEMENT": 2,
- "INCLUSIVE_MULTICAST_ETHERNET_TAG": 3,
- "ETHERNET_SEGMENT_ROUTE": 4,
-}
-
-func (x EVPN_TYPE) String() string {
- return proto.EnumName(EVPN_TYPE_name, int32(x))
-}
-
-type ENCAP_SUBTLV_TYPE int32
-
-const (
- ENCAP_SUBTLV_TYPE_UNKNOWN_SUBTLV_TYPE ENCAP_SUBTLV_TYPE = 0
- ENCAP_SUBTLV_TYPE_ENCAPSULATION ENCAP_SUBTLV_TYPE = 1
- ENCAP_SUBTLV_TYPE_PROTOCOL ENCAP_SUBTLV_TYPE = 2
- ENCAP_SUBTLV_TYPE_COLOR ENCAP_SUBTLV_TYPE = 4
-)
-
-var ENCAP_SUBTLV_TYPE_name = map[int32]string{
- 0: "UNKNOWN_SUBTLV_TYPE",
- 1: "ENCAPSULATION",
- 2: "PROTOCOL",
- 4: "COLOR",
-}
-var ENCAP_SUBTLV_TYPE_value = map[string]int32{
- "UNKNOWN_SUBTLV_TYPE": 0,
- "ENCAPSULATION": 1,
- "PROTOCOL": 2,
- "COLOR": 4,
-}
-
-func (x ENCAP_SUBTLV_TYPE) String() string {
- return proto.EnumName(ENCAP_SUBTLV_TYPE_name, int32(x))
-}
-
-type BGP_ATTR_TYPE int32
-
-const (
- BGP_ATTR_TYPE_UNKNOWN_ATTR BGP_ATTR_TYPE = 0
- BGP_ATTR_TYPE_ORIGIN BGP_ATTR_TYPE = 1
- BGP_ATTR_TYPE_AS_PATH BGP_ATTR_TYPE = 2
- BGP_ATTR_TYPE_NEXT_HOP BGP_ATTR_TYPE = 3
- BGP_ATTR_TYPE_MULTI_EXIT_DISC BGP_ATTR_TYPE = 4
- BGP_ATTR_TYPE_LOCAL_PREF BGP_ATTR_TYPE = 5
- BGP_ATTR_TYPE_ATOMIC_AGGREGATE BGP_ATTR_TYPE = 6
- BGP_ATTR_TYPE_AGGREGATOR BGP_ATTR_TYPE = 7
- BGP_ATTR_TYPE_COMMUNITIES BGP_ATTR_TYPE = 8
- BGP_ATTR_TYPE_ORIGINATOR_ID BGP_ATTR_TYPE = 9
- BGP_ATTR_TYPE_CLUSTER_LIST BGP_ATTR_TYPE = 10
- BGP_ATTR_TYPE_MP_REACH_NLRI BGP_ATTR_TYPE = 14
- BGP_ATTR_TYPE_MP_UNREACH_NLRI BGP_ATTR_TYPE = 15
- BGP_ATTR_TYPE_EXTENDED_COMMUNITIES BGP_ATTR_TYPE = 16
- BGP_ATTR_TYPE_AS4_PATH BGP_ATTR_TYPE = 17
- BGP_ATTR_TYPE_AS4_AGGREGATOR BGP_ATTR_TYPE = 18
- BGP_ATTR_TYPE_PMSI_TUNNEL BGP_ATTR_TYPE = 22
- BGP_ATTR_TYPE_TUNNEL_ENCAP BGP_ATTR_TYPE = 23
-)
-
-var BGP_ATTR_TYPE_name = map[int32]string{
- 0: "UNKNOWN_ATTR",
- 1: "ORIGIN",
- 2: "AS_PATH",
- 3: "NEXT_HOP",
- 4: "MULTI_EXIT_DISC",
- 5: "LOCAL_PREF",
- 6: "ATOMIC_AGGREGATE",
- 7: "AGGREGATOR",
- 8: "COMMUNITIES",
- 9: "ORIGINATOR_ID",
- 10: "CLUSTER_LIST",
- 14: "MP_REACH_NLRI",
- 15: "MP_UNREACH_NLRI",
- 16: "EXTENDED_COMMUNITIES",
- 17: "AS4_PATH",
- 18: "AS4_AGGREGATOR",
- 22: "PMSI_TUNNEL",
- 23: "TUNNEL_ENCAP",
-}
-var BGP_ATTR_TYPE_value = map[string]int32{
- "UNKNOWN_ATTR": 0,
- "ORIGIN": 1,
- "AS_PATH": 2,
- "NEXT_HOP": 3,
- "MULTI_EXIT_DISC": 4,
- "LOCAL_PREF": 5,
- "ATOMIC_AGGREGATE": 6,
- "AGGREGATOR": 7,
- "COMMUNITIES": 8,
- "ORIGINATOR_ID": 9,
- "CLUSTER_LIST": 10,
- "MP_REACH_NLRI": 14,
- "MP_UNREACH_NLRI": 15,
- "EXTENDED_COMMUNITIES": 16,
- "AS4_PATH": 17,
- "AS4_AGGREGATOR": 18,
- "PMSI_TUNNEL": 22,
- "TUNNEL_ENCAP": 23,
-}
-
-func (x BGP_ATTR_TYPE) String() string {
- return proto.EnumName(BGP_ATTR_TYPE_name, int32(x))
-}
-
type Error_ErrorCode int32
const (
@@ -519,64 +257,6 @@ func (x Error_ErrorCode) String() string {
return proto.EnumName(Error_ErrorCode_name, int32(x))
}
-type ExtendedCommunity_Type int32
-
-const (
- ExtendedCommunity_TWO_OCTET_AS_SPECIFIC ExtendedCommunity_Type = 0
- ExtendedCommunity_IP4_SPECIFIC ExtendedCommunity_Type = 1
- ExtendedCommunity_FOUR_OCTET_AS_SPECIFIC ExtendedCommunity_Type = 2
- ExtendedCommunity_OPAQUE ExtendedCommunity_Type = 3
- ExtendedCommunity_EVPN ExtendedCommunity_Type = 4
-)
-
-var ExtendedCommunity_Type_name = map[int32]string{
- 0: "TWO_OCTET_AS_SPECIFIC",
- 1: "IP4_SPECIFIC",
- 2: "FOUR_OCTET_AS_SPECIFIC",
- 3: "OPAQUE",
- 4: "EVPN",
-}
-var ExtendedCommunity_Type_value = map[string]int32{
- "TWO_OCTET_AS_SPECIFIC": 0,
- "IP4_SPECIFIC": 1,
- "FOUR_OCTET_AS_SPECIFIC": 2,
- "OPAQUE": 3,
- "EVPN": 4,
-}
-
-func (x ExtendedCommunity_Type) String() string {
- return proto.EnumName(ExtendedCommunity_Type_name, int32(x))
-}
-
-type ExtendedCommunity_Subtype int32
-
-const (
- ExtendedCommunity_ORIGIN_VALIDATION ExtendedCommunity_Subtype = 0
- ExtendedCommunity_ROUTE_TARGET ExtendedCommunity_Subtype = 2
- ExtendedCommunity_ROUTE_ORIGIN ExtendedCommunity_Subtype = 3
- ExtendedCommunity_ESI_LABEL ExtendedCommunity_Subtype = 4
- ExtendedCommunity_MAC_MOBILITY ExtendedCommunity_Subtype = 5
-)
-
-var ExtendedCommunity_Subtype_name = map[int32]string{
- 0: "ORIGIN_VALIDATION",
- 2: "ROUTE_TARGET",
- 3: "ROUTE_ORIGIN",
- 4: "ESI_LABEL",
- 5: "MAC_MOBILITY",
-}
-var ExtendedCommunity_Subtype_value = map[string]int32{
- "ORIGIN_VALIDATION": 0,
- "ROUTE_TARGET": 2,
- "ROUTE_ORIGIN": 3,
- "ESI_LABEL": 4,
- "MAC_MOBILITY": 5,
-}
-
-func (x ExtendedCommunity_Subtype) String() string {
- return proto.EnumName(ExtendedCommunity_Subtype_name, int32(x))
-}
-
type Error struct {
Code Error_ErrorCode `protobuf:"varint,1,opt,name=code,enum=api.Error_ErrorCode" json:"code,omitempty"`
Msg string `protobuf:"bytes,2,opt,name=msg" json:"msg,omitempty"`
@@ -686,16 +366,6 @@ func (m *AddressFamily) Reset() { *m = AddressFamily{} }
func (m *AddressFamily) String() string { return proto.CompactTextString(m) }
func (*AddressFamily) ProtoMessage() {}
-type RouteDistinguisher struct {
- Type ROUTE_DISTINGUISHER_TYPE `protobuf:"varint,1,opt,name=type,enum=api.ROUTE_DISTINGUISHER_TYPE" json:"type,omitempty"`
- Admin string `protobuf:"bytes,2,opt,name=admin" json:"admin,omitempty"`
- Assigned uint32 `protobuf:"varint,3,opt,name=assigned" json:"assigned,omitempty"`
-}
-
-func (m *RouteDistinguisher) Reset() { *m = RouteDistinguisher{} }
-func (m *RouteDistinguisher) String() string { return proto.CompactTextString(m) }
-func (*RouteDistinguisher) ProtoMessage() {}
-
type GracefulRestartTuple struct {
Af *AddressFamily `protobuf:"bytes,1,opt,name=af" json:"af,omitempty"`
Flags uint32 `protobuf:"varint,2,opt,name=flags" json:"flags,omitempty"`
@@ -754,304 +424,21 @@ func (m *Capability) GetGracefulRestart() *GracefulRestart {
return nil
}
-type Aggregator struct {
- As uint32 `protobuf:"varint,1,opt,name=as" json:"as,omitempty"`
- Address string `protobuf:"bytes,2,opt,name=address" json:"address,omitempty"`
-}
-
-func (m *Aggregator) Reset() { *m = Aggregator{} }
-func (m *Aggregator) String() string { return proto.CompactTextString(m) }
-func (*Aggregator) ProtoMessage() {}
-
-type ExtendedCommunity struct {
- Type ExtendedCommunity_Type `protobuf:"varint,1,opt,name=type,enum=api.ExtendedCommunity_Type" json:"type,omitempty"`
- Subtype ExtendedCommunity_Subtype `protobuf:"varint,2,opt,name=subtype,enum=api.ExtendedCommunity_Subtype" json:"subtype,omitempty"`
- IsTransitive bool `protobuf:"varint,3,opt,name=is_transitive" json:"is_transitive,omitempty"`
- Asn uint32 `protobuf:"varint,4,opt,name=asn" json:"asn,omitempty"`
- Ipv4 string `protobuf:"bytes,5,opt,name=ipv4" json:"ipv4,omitempty"`
- LocalAdmin uint32 `protobuf:"varint,6,opt,name=local_admin" json:"local_admin,omitempty"`
- IsSingleActive bool `protobuf:"varint,7,opt,name=is_single_active" json:"is_single_active,omitempty"`
- Label uint32 `protobuf:"varint,8,opt,name=label" json:"label,omitempty"`
- EsImport string `protobuf:"bytes,9,opt,name=es_import" json:"es_import,omitempty"`
- Sequence uint32 `protobuf:"varint,10,opt,name=sequence" json:"sequence,omitempty"`
- IsSticky bool `protobuf:"varint,11,opt,name=is_sticky" json:"is_sticky,omitempty"`
-}
-
-func (m *ExtendedCommunity) Reset() { *m = ExtendedCommunity{} }
-func (m *ExtendedCommunity) String() string { return proto.CompactTextString(m) }
-func (*ExtendedCommunity) ProtoMessage() {}
-
-type EVPNNlri struct {
- Type EVPN_TYPE `protobuf:"varint,1,opt,name=type,enum=api.EVPN_TYPE" json:"type,omitempty"`
- // EvpnAutoDiscoveryRoute = 2;
- MacIpAdv *EvpnMacIpAdvertisement `protobuf:"bytes,3,opt,name=mac_ip_adv" json:"mac_ip_adv,omitempty"`
- MulticastEtag *EvpnInclusiveMulticastEthernetTag `protobuf:"bytes,4,opt,name=multicast_etag" json:"multicast_etag,omitempty"`
-}
-
-func (m *EVPNNlri) Reset() { *m = EVPNNlri{} }
-func (m *EVPNNlri) String() string { return proto.CompactTextString(m) }
-func (*EVPNNlri) ProtoMessage() {}
-
-func (m *EVPNNlri) GetMacIpAdv() *EvpnMacIpAdvertisement {
- if m != nil {
- return m.MacIpAdv
- }
- return nil
-}
-
-func (m *EVPNNlri) GetMulticastEtag() *EvpnInclusiveMulticastEthernetTag {
- if m != nil {
- return m.MulticastEtag
- }
- return nil
-}
-
-type EvpnMacIpAdvertisement struct {
- MacAddr string `protobuf:"bytes,1,opt,name=mac_addr" json:"mac_addr,omitempty"`
- MacAddrLen uint32 `protobuf:"varint,2,opt,name=mac_addr_len" json:"mac_addr_len,omitempty"`
- IpAddr string `protobuf:"bytes,3,opt,name=ip_addr" json:"ip_addr,omitempty"`
- IpAddrLen uint32 `protobuf:"varint,4,opt,name=ip_addr_len" json:"ip_addr_len,omitempty"`
- Rd string `protobuf:"bytes,5,opt,name=rd" json:"rd,omitempty"`
- Esi string `protobuf:"bytes,6,opt,name=esi" json:"esi,omitempty"`
- Etag uint32 `protobuf:"varint,7,opt,name=etag" json:"etag,omitempty"`
- Labels []uint32 `protobuf:"varint,8,rep,name=labels" json:"labels,omitempty"`
-}
-
-func (m *EvpnMacIpAdvertisement) Reset() { *m = EvpnMacIpAdvertisement{} }
-func (m *EvpnMacIpAdvertisement) String() string { return proto.CompactTextString(m) }
-func (*EvpnMacIpAdvertisement) ProtoMessage() {}
-
-type EvpnInclusiveMulticastEthernetTag struct {
- Rd string `protobuf:"bytes,1,opt,name=rd" json:"rd,omitempty"`
- Etag uint32 `protobuf:"varint,2,opt,name=etag" json:"etag,omitempty"`
- IpAddr string `protobuf:"bytes,3,opt,name=ip_addr" json:"ip_addr,omitempty"`
- IpAddrLen uint32 `protobuf:"varint,4,opt,name=ip_addr_len" json:"ip_addr_len,omitempty"`
-}
-
-func (m *EvpnInclusiveMulticastEthernetTag) Reset() { *m = EvpnInclusiveMulticastEthernetTag{} }
-func (m *EvpnInclusiveMulticastEthernetTag) String() string { return proto.CompactTextString(m) }
-func (*EvpnInclusiveMulticastEthernetTag) ProtoMessage() {}
-
-type RTNlri struct {
- Asn uint32 `protobuf:"varint,1,opt,name=asn" json:"asn,omitempty"`
- Target *ExtendedCommunity `protobuf:"bytes,2,opt,name=target" json:"target,omitempty"`
- Length uint32 `protobuf:"varint,3,opt,name=length" json:"length,omitempty"`
-}
-
-func (m *RTNlri) Reset() { *m = RTNlri{} }
-func (m *RTNlri) String() string { return proto.CompactTextString(m) }
-func (*RTNlri) ProtoMessage() {}
-
-func (m *RTNlri) GetTarget() *ExtendedCommunity {
- if m != nil {
- return m.Target
- }
- return nil
-}
-
-type VPNNlri struct {
- Rd *RouteDistinguisher `protobuf:"bytes,1,opt,name=rd" json:"rd,omitempty"`
- Labels []uint32 `protobuf:"varint,2,rep,name=labels" json:"labels,omitempty"`
- IpAddr string `protobuf:"bytes,3,opt,name=ip_addr" json:"ip_addr,omitempty"`
- IpAddrLen uint32 `protobuf:"varint,4,opt,name=ip_addr_len" json:"ip_addr_len,omitempty"`
-}
-
-func (m *VPNNlri) Reset() { *m = VPNNlri{} }
-func (m *VPNNlri) String() string { return proto.CompactTextString(m) }
-func (*VPNNlri) ProtoMessage() {}
-
-func (m *VPNNlri) GetRd() *RouteDistinguisher {
- if m != nil {
- return m.Rd
- }
- return nil
-}
-
-type Nlri struct {
- Af *AddressFamily `protobuf:"bytes,1,opt,name=af" json:"af,omitempty"`
- Prefix string `protobuf:"bytes,2,opt,name=prefix" json:"prefix,omitempty"`
- Nexthop string `protobuf:"bytes,3,opt,name=nexthop" json:"nexthop,omitempty"`
- EvpnNlri *EVPNNlri `protobuf:"bytes,4,opt,name=evpn_nlri" json:"evpn_nlri,omitempty"`
- RtNlri *RTNlri `protobuf:"bytes,5,opt,name=rt_nlri" json:"rt_nlri,omitempty"`
- VpnNlri *VPNNlri `protobuf:"bytes,6,opt,name=vpn_nlri" json:"vpn_nlri,omitempty"`
-}
-
-func (m *Nlri) Reset() { *m = Nlri{} }
-func (m *Nlri) String() string { return proto.CompactTextString(m) }
-func (*Nlri) ProtoMessage() {}
-
-func (m *Nlri) GetAf() *AddressFamily {
- if m != nil {
- return m.Af
- }
- return nil
-}
-
-func (m *Nlri) GetEvpnNlri() *EVPNNlri {
- if m != nil {
- return m.EvpnNlri
- }
- return nil
-}
-
-func (m *Nlri) GetRtNlri() *RTNlri {
- if m != nil {
- return m.RtNlri
- }
- return nil
-}
-
-func (m *Nlri) GetVpnNlri() *VPNNlri {
- if m != nil {
- return m.VpnNlri
- }
- return nil
-}
-
-type TunnelEncapSubTLV struct {
- Type ENCAP_SUBTLV_TYPE `protobuf:"varint,1,opt,name=type,enum=api.ENCAP_SUBTLV_TYPE" json:"type,omitempty"`
- Value string `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
- Key uint32 `protobuf:"varint,3,opt,name=key" json:"key,omitempty"`
- Cookie string `protobuf:"bytes,4,opt,name=cookie" json:"cookie,omitempty"`
- Protocol uint32 `protobuf:"varint,5,opt,name=protocol" json:"protocol,omitempty"`
- Color uint32 `protobuf:"varint,6,opt,name=color" json:"color,omitempty"`
-}
-
-func (m *TunnelEncapSubTLV) Reset() { *m = TunnelEncapSubTLV{} }
-func (m *TunnelEncapSubTLV) String() string { return proto.CompactTextString(m) }
-func (*TunnelEncapSubTLV) ProtoMessage() {}
-
-type TunnelEncapTLV struct {
- Type TUNNEL_TYPE `protobuf:"varint,1,opt,name=type,enum=api.TUNNEL_TYPE" json:"type,omitempty"`
- SubTlv []*TunnelEncapSubTLV `protobuf:"bytes,2,rep,name=sub_tlv" json:"sub_tlv,omitempty"`
-}
-
-func (m *TunnelEncapTLV) Reset() { *m = TunnelEncapTLV{} }
-func (m *TunnelEncapTLV) String() string { return proto.CompactTextString(m) }
-func (*TunnelEncapTLV) ProtoMessage() {}
-
-func (m *TunnelEncapTLV) GetSubTlv() []*TunnelEncapSubTLV {
- if m != nil {
- return m.SubTlv
- }
- return nil
-}
-
-type PmsiTunnel struct {
- IsLeafInfoRequired bool `protobuf:"varint,1,opt,name=is_leaf_info_required" json:"is_leaf_info_required,omitempty"`
- Type PMSI_TUNNEL_TYPE `protobuf:"varint,2,opt,name=type,enum=api.PMSI_TUNNEL_TYPE" json:"type,omitempty"`
- Label uint32 `protobuf:"varint,3,opt,name=label" json:"label,omitempty"`
- TunnelId string `protobuf:"bytes,4,opt,name=tunnel_id" json:"tunnel_id,omitempty"`
-}
-
-func (m *PmsiTunnel) Reset() { *m = PmsiTunnel{} }
-func (m *PmsiTunnel) String() string { return proto.CompactTextString(m) }
-func (*PmsiTunnel) ProtoMessage() {}
-
-type PathAttr struct {
- Type BGP_ATTR_TYPE `protobuf:"varint,1,opt,name=type,enum=api.BGP_ATTR_TYPE" json:"type,omitempty"`
- Value []string `protobuf:"bytes,2,rep,name=value" json:"value,omitempty"`
- Origin Origin `protobuf:"varint,3,opt,name=origin,enum=api.Origin" json:"origin,omitempty"`
- AsPaths []*AsPath `protobuf:"bytes,4,rep,name=as_paths" json:"as_paths,omitempty"`
- Nexthop string `protobuf:"bytes,5,opt,name=nexthop" json:"nexthop,omitempty"`
- Metric uint32 `protobuf:"varint,6,opt,name=metric" json:"metric,omitempty"`
- Pref uint32 `protobuf:"varint,7,opt,name=pref" json:"pref,omitempty"`
- Aggregator *Aggregator `protobuf:"bytes,8,opt,name=aggregator" json:"aggregator,omitempty"`
- Communites []uint32 `protobuf:"varint,9,rep,name=communites" json:"communites,omitempty"`
- Originator string `protobuf:"bytes,10,opt,name=originator" json:"originator,omitempty"`
- Cluster []string `protobuf:"bytes,11,rep,name=cluster" json:"cluster,omitempty"`
- Nlri []*Nlri `protobuf:"bytes,12,rep,name=nlri" json:"nlri,omitempty"`
- TunnelEncap []*TunnelEncapTLV `protobuf:"bytes,13,rep,name=tunnel_encap" json:"tunnel_encap,omitempty"`
- ExtendedCommunities []*ExtendedCommunity `protobuf:"bytes,16,rep,name=extended_communities" json:"extended_communities,omitempty"`
- PmsiTunnel *PmsiTunnel `protobuf:"bytes,14,opt,name=pmsi_tunnel" json:"pmsi_tunnel,omitempty"`
-}
-
-func (m *PathAttr) Reset() { *m = PathAttr{} }
-func (m *PathAttr) String() string { return proto.CompactTextString(m) }
-func (*PathAttr) ProtoMessage() {}
-
-func (m *PathAttr) GetAsPaths() []*AsPath {
- if m != nil {
- return m.AsPaths
- }
- return nil
-}
-
-func (m *PathAttr) GetAggregator() *Aggregator {
- if m != nil {
- return m.Aggregator
- }
- return nil
-}
-
-func (m *PathAttr) GetNlri() []*Nlri {
- if m != nil {
- return m.Nlri
- }
- return nil
-}
-
-func (m *PathAttr) GetTunnelEncap() []*TunnelEncapTLV {
- if m != nil {
- return m.TunnelEncap
- }
- return nil
-}
-
-func (m *PathAttr) GetExtendedCommunities() []*ExtendedCommunity {
- if m != nil {
- return m.ExtendedCommunities
- }
- return nil
-}
-
-func (m *PathAttr) GetPmsiTunnel() *PmsiTunnel {
- if m != nil {
- return m.PmsiTunnel
- }
- return nil
-}
-
-type AsPath struct {
- SegmentType uint32 `protobuf:"varint,1,opt,name=segment_type" json:"segment_type,omitempty"`
- Asns []uint32 `protobuf:"varint,2,rep,name=asns" json:"asns,omitempty"`
-}
-
-func (m *AsPath) Reset() { *m = AsPath{} }
-func (m *AsPath) String() string { return proto.CompactTextString(m) }
-func (*AsPath) ProtoMessage() {}
-
type Path struct {
- Nlri *Nlri `protobuf:"bytes,1,opt,name=nlri" json:"nlri,omitempty"`
- Nexthop string `protobuf:"bytes,2,opt,name=nexthop" json:"nexthop,omitempty"`
- Age int64 `protobuf:"varint,3,opt,name=age" json:"age,omitempty"`
- Attrs []*PathAttr `protobuf:"bytes,4,rep,name=attrs" json:"attrs,omitempty"`
- Best bool `protobuf:"varint,5,opt,name=best" json:"best,omitempty"`
- IsWithdraw bool `protobuf:"varint,6,opt,name=is_withdraw" json:"is_withdraw,omitempty"`
+ Nlri []byte `protobuf:"bytes,1,opt,name=nlri,proto3" json:"nlri,omitempty"`
+ Pattrs [][]byte `protobuf:"bytes,2,rep,name=pattrs,proto3" json:"pattrs,omitempty"`
+ Age int64 `protobuf:"varint,3,opt,name=age" json:"age,omitempty"`
+ Best bool `protobuf:"varint,4,opt,name=best" json:"best,omitempty"`
+ IsWithdraw bool `protobuf:"varint,5,opt,name=is_withdraw" json:"is_withdraw,omitempty"`
}
func (m *Path) Reset() { *m = Path{} }
func (m *Path) String() string { return proto.CompactTextString(m) }
func (*Path) ProtoMessage() {}
-func (m *Path) GetNlri() *Nlri {
- if m != nil {
- return m.Nlri
- }
- return nil
-}
-
-func (m *Path) GetAttrs() []*PathAttr {
- if m != nil {
- return m.Attrs
- }
- return nil
-}
-
type Destination struct {
- Prefix string `protobuf:"bytes,1,opt,name=prefix" json:"prefix,omitempty"`
- Paths []*Path `protobuf:"bytes,2,rep,name=paths" json:"paths,omitempty"`
- BestPathIdx uint32 `protobuf:"varint,3,opt,name=best_path_idx" json:"best_path_idx,omitempty"`
+ Prefix string `protobuf:"bytes,1,opt,name=prefix" json:"prefix,omitempty"`
+ Paths []*Path `protobuf:"bytes,2,rep,name=paths" json:"paths,omitempty"`
}
func (m *Destination) Reset() { *m = Destination{} }
@@ -1449,17 +836,8 @@ func init() {
proto.RegisterEnum("api.Operation", Operation_name, Operation_value)
proto.RegisterEnum("api.AFI", AFI_name, AFI_value)
proto.RegisterEnum("api.SAFI", SAFI_name, SAFI_value)
- proto.RegisterEnum("api.ROUTE_DISTINGUISHER_TYPE", ROUTE_DISTINGUISHER_TYPE_name, ROUTE_DISTINGUISHER_TYPE_value)
proto.RegisterEnum("api.BGP_CAPABILITY", BGP_CAPABILITY_name, BGP_CAPABILITY_value)
- proto.RegisterEnum("api.Origin", Origin_name, Origin_value)
- proto.RegisterEnum("api.TUNNEL_TYPE", TUNNEL_TYPE_name, TUNNEL_TYPE_value)
- proto.RegisterEnum("api.PMSI_TUNNEL_TYPE", PMSI_TUNNEL_TYPE_name, PMSI_TUNNEL_TYPE_value)
- proto.RegisterEnum("api.EVPN_TYPE", EVPN_TYPE_name, EVPN_TYPE_value)
- proto.RegisterEnum("api.ENCAP_SUBTLV_TYPE", ENCAP_SUBTLV_TYPE_name, ENCAP_SUBTLV_TYPE_value)
- proto.RegisterEnum("api.BGP_ATTR_TYPE", BGP_ATTR_TYPE_name, BGP_ATTR_TYPE_value)
proto.RegisterEnum("api.Error_ErrorCode", Error_ErrorCode_name, Error_ErrorCode_value)
- proto.RegisterEnum("api.ExtendedCommunity_Type", ExtendedCommunity_Type_name, ExtendedCommunity_Type_value)
- proto.RegisterEnum("api.ExtendedCommunity_Subtype", ExtendedCommunity_Subtype_name, ExtendedCommunity_Subtype_value)
}
// Client API for Grpc service
@@ -1468,7 +846,6 @@ type GrpcClient interface {
GetNeighbors(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetNeighborsClient, error)
GetNeighbor(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (*Peer, error)
GetRib(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetRibClient, error)
- GetAdjRib(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetAdjRibClient, error)
Reset(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (*Error, error)
SoftReset(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (*Error, error)
SoftResetIn(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (*Error, error)
@@ -1487,7 +864,6 @@ type GrpcClient interface {
GetMrt(ctx context.Context, in *MrtArguments, opts ...grpc.CallOption) (Grpc_GetMrtClient, error)
GetRPKI(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetRPKIClient, error)
GetVrfs(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetVrfsClient, error)
- GetVrf(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetVrfClient, error)
ModVrf(ctx context.Context, in *ModVrfArguments, opts ...grpc.CallOption) (*Error, error)
}
@@ -1572,38 +948,6 @@ func (x *grpcGetRibClient) Recv() (*Destination, error) {
return m, nil
}
-func (c *grpcClient) GetAdjRib(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetAdjRibClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[2], c.cc, "/api.Grpc/GetAdjRib", opts...)
- if err != nil {
- return nil, err
- }
- x := &grpcGetAdjRibClient{stream}
- if err := x.ClientStream.SendMsg(in); err != nil {
- return nil, err
- }
- if err := x.ClientStream.CloseSend(); err != nil {
- return nil, err
- }
- return x, nil
-}
-
-type Grpc_GetAdjRibClient interface {
- Recv() (*Path, error)
- grpc.ClientStream
-}
-
-type grpcGetAdjRibClient struct {
- grpc.ClientStream
-}
-
-func (x *grpcGetAdjRibClient) Recv() (*Path, error) {
- m := new(Path)
- if err := x.ClientStream.RecvMsg(m); err != nil {
- return nil, err
- }
- return m, nil
-}
-
func (c *grpcClient) Reset(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (*Error, error) {
out := new(Error)
err := grpc.Invoke(ctx, "/api.Grpc/Reset", in, out, c.cc, opts...)
@@ -1668,7 +1012,7 @@ func (c *grpcClient) Disable(ctx context.Context, in *Arguments, opts ...grpc.Ca
}
func (c *grpcClient) ModPath(ctx context.Context, opts ...grpc.CallOption) (Grpc_ModPathClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[3], c.cc, "/api.Grpc/ModPath", opts...)
+ stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[2], c.cc, "/api.Grpc/ModPath", opts...)
if err != nil {
return nil, err
}
@@ -1711,7 +1055,7 @@ func (c *grpcClient) GetNeighborPolicy(ctx context.Context, in *Arguments, opts
}
func (c *grpcClient) ModNeighborPolicy(ctx context.Context, opts ...grpc.CallOption) (Grpc_ModNeighborPolicyClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[4], c.cc, "/api.Grpc/ModNeighborPolicy", opts...)
+ stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[3], c.cc, "/api.Grpc/ModNeighborPolicy", opts...)
if err != nil {
return nil, err
}
@@ -1742,7 +1086,7 @@ func (x *grpcModNeighborPolicyClient) Recv() (*Error, error) {
}
func (c *grpcClient) GetPolicyRoutePolicies(ctx context.Context, in *PolicyArguments, opts ...grpc.CallOption) (Grpc_GetPolicyRoutePoliciesClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[5], c.cc, "/api.Grpc/GetPolicyRoutePolicies", opts...)
+ stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[4], c.cc, "/api.Grpc/GetPolicyRoutePolicies", opts...)
if err != nil {
return nil, err
}
@@ -1783,7 +1127,7 @@ func (c *grpcClient) GetPolicyRoutePolicy(ctx context.Context, in *PolicyArgumen
}
func (c *grpcClient) ModPolicyRoutePolicy(ctx context.Context, opts ...grpc.CallOption) (Grpc_ModPolicyRoutePolicyClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[6], c.cc, "/api.Grpc/ModPolicyRoutePolicy", opts...)
+ stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[5], c.cc, "/api.Grpc/ModPolicyRoutePolicy", opts...)
if err != nil {
return nil, err
}
@@ -1814,7 +1158,7 @@ func (x *grpcModPolicyRoutePolicyClient) Recv() (*Error, error) {
}
func (c *grpcClient) MonitorBestChanged(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_MonitorBestChangedClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[7], c.cc, "/api.Grpc/MonitorBestChanged", opts...)
+ stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[6], c.cc, "/api.Grpc/MonitorBestChanged", opts...)
if err != nil {
return nil, err
}
@@ -1829,7 +1173,7 @@ func (c *grpcClient) MonitorBestChanged(ctx context.Context, in *Arguments, opts
}
type Grpc_MonitorBestChangedClient interface {
- Recv() (*Path, error)
+ Recv() (*Destination, error)
grpc.ClientStream
}
@@ -1837,8 +1181,8 @@ type grpcMonitorBestChangedClient struct {
grpc.ClientStream
}
-func (x *grpcMonitorBestChangedClient) Recv() (*Path, error) {
- m := new(Path)
+func (x *grpcMonitorBestChangedClient) Recv() (*Destination, error) {
+ m := new(Destination)
if err := x.ClientStream.RecvMsg(m); err != nil {
return nil, err
}
@@ -1846,7 +1190,7 @@ func (x *grpcMonitorBestChangedClient) Recv() (*Path, error) {
}
func (c *grpcClient) MonitorPeerState(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_MonitorPeerStateClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[8], c.cc, "/api.Grpc/MonitorPeerState", opts...)
+ stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[7], c.cc, "/api.Grpc/MonitorPeerState", opts...)
if err != nil {
return nil, err
}
@@ -1878,7 +1222,7 @@ func (x *grpcMonitorPeerStateClient) Recv() (*Peer, error) {
}
func (c *grpcClient) GetMrt(ctx context.Context, in *MrtArguments, opts ...grpc.CallOption) (Grpc_GetMrtClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[9], c.cc, "/api.Grpc/GetMrt", opts...)
+ stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[8], c.cc, "/api.Grpc/GetMrt", opts...)
if err != nil {
return nil, err
}
@@ -1910,7 +1254,7 @@ func (x *grpcGetMrtClient) Recv() (*MrtMessage, error) {
}
func (c *grpcClient) GetRPKI(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetRPKIClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[10], c.cc, "/api.Grpc/GetRPKI", opts...)
+ stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[9], c.cc, "/api.Grpc/GetRPKI", opts...)
if err != nil {
return nil, err
}
@@ -1942,7 +1286,7 @@ func (x *grpcGetRPKIClient) Recv() (*ROA, error) {
}
func (c *grpcClient) GetVrfs(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetVrfsClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[11], c.cc, "/api.Grpc/GetVrfs", opts...)
+ stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[10], c.cc, "/api.Grpc/GetVrfs", opts...)
if err != nil {
return nil, err
}
@@ -1973,38 +1317,6 @@ func (x *grpcGetVrfsClient) Recv() (*Vrf, error) {
return m, nil
}
-func (c *grpcClient) GetVrf(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (Grpc_GetVrfClient, error) {
- stream, err := grpc.NewClientStream(ctx, &_Grpc_serviceDesc.Streams[12], c.cc, "/api.Grpc/GetVrf", opts...)
- if err != nil {
- return nil, err
- }
- x := &grpcGetVrfClient{stream}
- if err := x.ClientStream.SendMsg(in); err != nil {
- return nil, err
- }
- if err := x.ClientStream.CloseSend(); err != nil {
- return nil, err
- }
- return x, nil
-}
-
-type Grpc_GetVrfClient interface {
- Recv() (*Path, error)
- grpc.ClientStream
-}
-
-type grpcGetVrfClient struct {
- grpc.ClientStream
-}
-
-func (x *grpcGetVrfClient) Recv() (*Path, error) {
- m := new(Path)
- if err := x.ClientStream.RecvMsg(m); err != nil {
- return nil, err
- }
- return m, nil
-}
-
func (c *grpcClient) ModVrf(ctx context.Context, in *ModVrfArguments, opts ...grpc.CallOption) (*Error, error) {
out := new(Error)
err := grpc.Invoke(ctx, "/api.Grpc/ModVrf", in, out, c.cc, opts...)
@@ -2020,7 +1332,6 @@ type GrpcServer interface {
GetNeighbors(*Arguments, Grpc_GetNeighborsServer) error
GetNeighbor(context.Context, *Arguments) (*Peer, error)
GetRib(*Arguments, Grpc_GetRibServer) error
- GetAdjRib(*Arguments, Grpc_GetAdjRibServer) error
Reset(context.Context, *Arguments) (*Error, error)
SoftReset(context.Context, *Arguments) (*Error, error)
SoftResetIn(context.Context, *Arguments) (*Error, error)
@@ -2039,7 +1350,6 @@ type GrpcServer interface {
GetMrt(*MrtArguments, Grpc_GetMrtServer) error
GetRPKI(*Arguments, Grpc_GetRPKIServer) error
GetVrfs(*Arguments, Grpc_GetVrfsServer) error
- GetVrf(*Arguments, Grpc_GetVrfServer) error
ModVrf(context.Context, *ModVrfArguments) (*Error, error)
}
@@ -2101,27 +1411,6 @@ func (x *grpcGetRibServer) Send(m *Destination) error {
return x.ServerStream.SendMsg(m)
}
-func _Grpc_GetAdjRib_Handler(srv interface{}, stream grpc.ServerStream) error {
- m := new(Arguments)
- if err := stream.RecvMsg(m); err != nil {
- return err
- }
- return srv.(GrpcServer).GetAdjRib(m, &grpcGetAdjRibServer{stream})
-}
-
-type Grpc_GetAdjRibServer interface {
- Send(*Path) error
- grpc.ServerStream
-}
-
-type grpcGetAdjRibServer struct {
- grpc.ServerStream
-}
-
-func (x *grpcGetAdjRibServer) Send(m *Path) error {
- return x.ServerStream.SendMsg(m)
-}
-
func _Grpc_Reset_Handler(srv interface{}, ctx context.Context, codec grpc.Codec, buf []byte) (interface{}, error) {
in := new(Arguments)
if err := codec.Unmarshal(buf, in); err != nil {
@@ -2338,7 +1627,7 @@ func _Grpc_MonitorBestChanged_Handler(srv interface{}, stream grpc.ServerStream)
}
type Grpc_MonitorBestChangedServer interface {
- Send(*Path) error
+ Send(*Destination) error
grpc.ServerStream
}
@@ -2346,7 +1635,7 @@ type grpcMonitorBestChangedServer struct {
grpc.ServerStream
}
-func (x *grpcMonitorBestChangedServer) Send(m *Path) error {
+func (x *grpcMonitorBestChangedServer) Send(m *Destination) error {
return x.ServerStream.SendMsg(m)
}
@@ -2434,27 +1723,6 @@ func (x *grpcGetVrfsServer) Send(m *Vrf) error {
return x.ServerStream.SendMsg(m)
}
-func _Grpc_GetVrf_Handler(srv interface{}, stream grpc.ServerStream) error {
- m := new(Arguments)
- if err := stream.RecvMsg(m); err != nil {
- return err
- }
- return srv.(GrpcServer).GetVrf(m, &grpcGetVrfServer{stream})
-}
-
-type Grpc_GetVrfServer interface {
- Send(*Path) error
- grpc.ServerStream
-}
-
-type grpcGetVrfServer struct {
- grpc.ServerStream
-}
-
-func (x *grpcGetVrfServer) Send(m *Path) error {
- return x.ServerStream.SendMsg(m)
-}
-
func _Grpc_ModVrf_Handler(srv interface{}, ctx context.Context, codec grpc.Codec, buf []byte) (interface{}, error) {
in := new(ModVrfArguments)
if err := codec.Unmarshal(buf, in); err != nil {
@@ -2528,11 +1796,6 @@ var _Grpc_serviceDesc = grpc.ServiceDesc{
ServerStreams: true,
},
{
- StreamName: "GetAdjRib",
- Handler: _Grpc_GetAdjRib_Handler,
- ServerStreams: true,
- },
- {
StreamName: "ModPath",
Handler: _Grpc_ModPath_Handler,
ClientStreams: true,
@@ -2579,10 +1842,5 @@ var _Grpc_serviceDesc = grpc.ServiceDesc{
Handler: _Grpc_GetVrfs_Handler,
ServerStreams: true,
},
- {
- StreamName: "GetVrf",
- Handler: _Grpc_GetVrf_Handler,
- ServerStreams: true,
- },
},
}
diff --git a/api/gobgp.proto b/api/gobgp.proto
index 5e6fc867..cfc8fffd 100644
--- a/api/gobgp.proto
+++ b/api/gobgp.proto
@@ -23,7 +23,6 @@ service Grpc {
rpc GetNeighbors(Arguments) returns (stream Peer) {}
rpc GetNeighbor(Arguments) returns (Peer) {}
rpc GetRib(Arguments) returns (stream Destination) {}
- rpc GetAdjRib(Arguments) returns (stream Path) {}
rpc Reset(Arguments) returns (Error) {}
rpc SoftReset(Arguments) returns (Error) {}
rpc SoftResetIn(Arguments) returns (Error) {}
@@ -37,12 +36,11 @@ service Grpc {
rpc GetPolicyRoutePolicies(PolicyArguments) returns (stream PolicyDefinition) {}
rpc GetPolicyRoutePolicy(PolicyArguments) returns (PolicyDefinition) {}
rpc ModPolicyRoutePolicy(stream PolicyArguments) returns (stream Error) {}
- rpc MonitorBestChanged(Arguments) returns (stream Path) {}
+ rpc MonitorBestChanged(Arguments) returns (stream Destination) {}
rpc MonitorPeerState(Arguments) returns (stream Peer) {}
rpc GetMrt(MrtArguments) returns (stream MrtMessage) {}
rpc GetRPKI(Arguments) returns (stream ROA) {}
rpc GetVrfs(Arguments) returns (stream Vrf) {}
- rpc GetVrf(Arguments) returns (stream Path) {}
rpc ModVrf(ModVrfArguments) returns (Error) {}
}
@@ -136,18 +134,6 @@ message AddressFamily {
SAFI Safi = 2;
}
-enum ROUTE_DISTINGUISHER_TYPE {
- TWO_OCTET_AS = 0;
- IP4 = 1;
- FOUR_OCTET_AS = 2;
-}
-
-message RouteDistinguisher {
- ROUTE_DISTINGUISHER_TYPE type = 1;
- string admin = 2;
- uint32 assigned = 3;
-}
-
enum BGP_CAPABILITY {
UNKNOWN_CAP = 0;
MULTIPROTOCOL = 1;
@@ -177,209 +163,17 @@ message Capability {
uint32 asn = 4;
}
-enum Origin {
- IGP = 0;
- EGP = 1;
- INCOMPLETE = 2;
-}
-
-message Aggregator {
- uint32 as = 1;
- string address = 2;
-}
-
-message ExtendedCommunity {
- enum Type {
- TWO_OCTET_AS_SPECIFIC = 0;
- IP4_SPECIFIC = 1;
- FOUR_OCTET_AS_SPECIFIC = 2;
- OPAQUE = 3;
- EVPN = 4;
- }
- Type type = 1;
- enum Subtype {
- ORIGIN_VALIDATION = 0;
- ROUTE_TARGET = 2;
- ROUTE_ORIGIN = 3;
- ESI_LABEL = 4;
- MAC_MOBILITY = 5;
- }
- Subtype subtype = 2;
- bool is_transitive = 3;
- uint32 asn = 4;
- string ipv4 = 5;
- uint32 local_admin = 6;
- bool is_single_active = 7;
- uint32 label = 8;
- string es_import = 9;
- uint32 sequence = 10;
- bool is_sticky = 11;
-}
-
-enum TUNNEL_TYPE {
- UNKNOWN_TUNNEL_TYPE = 0;
- L2TPV3_OVER_IP = 1;
- GRE = 2;
- IP_IN_IP = 7;
- VXLAN = 8;
- NVGRE = 9;
- MPLS = 10;
- MPLS_IN_GRE = 11;
- VXLAN_GRE = 12;
-}
-
-enum PMSI_TUNNEL_TYPE {
- NO_TUNNEL = 0;
- RSVP_TE_P2MP = 1;
- MLDP_P2MP = 2;
- PIM_SSM_TREE = 3;
- PIM_SM_TREE = 4;
- BIDIR_PIM_TREE = 5;
- INGRESS_REPL = 6;
- MLDP_MP2MP = 7;
-}
-
-enum EVPN_TYPE {
- UNKNOWN_EVPN_TYPE = 0;
- ROUTE_TYPE_ETHERNET_AUTO_DISCOVERY = 1;
- ROUTE_TYPE_MAC_IP_ADVERTISEMENT = 2;
- INCLUSIVE_MULTICAST_ETHERNET_TAG = 3;
- ETHERNET_SEGMENT_ROUTE = 4;
-}
-
-message EVPNNlri {
- EVPN_TYPE type = 1;
-// EvpnAutoDiscoveryRoute = 2;
- EvpnMacIpAdvertisement mac_ip_adv = 3;
- EvpnInclusiveMulticastEthernetTag multicast_etag = 4;
-// EvpnEthernetSegmentRoute = 5;
-}
-
-message EvpnMacIpAdvertisement {
- string mac_addr = 1;
- uint32 mac_addr_len = 2;
- string ip_addr = 3;
- uint32 ip_addr_len = 4;
- string rd = 5;
- string esi = 6;
- uint32 etag = 7;
- repeated uint32 labels = 8;
-}
-
-message EvpnInclusiveMulticastEthernetTag {
- string rd = 1;
- uint32 etag = 2;
- string ip_addr = 3;
- uint32 ip_addr_len = 4;
-}
-
-message RTNlri {
- uint32 asn = 1;
- ExtendedCommunity target = 2;
- uint32 length = 3;
-}
-
-message VPNNlri {
- RouteDistinguisher rd = 1;
- repeated uint32 labels = 2;
- string ip_addr = 3;
- uint32 ip_addr_len = 4;
-}
-
-message Nlri {
- AddressFamily af = 1;
- string prefix = 2;
- string nexthop = 3;
- EVPNNlri evpn_nlri = 4;
- RTNlri rt_nlri = 5;
- VPNNlri vpn_nlri = 6;
-}
-
-enum ENCAP_SUBTLV_TYPE {
- UNKNOWN_SUBTLV_TYPE = 0;
- ENCAPSULATION = 1;
- PROTOCOL = 2;
- COLOR = 4;
-}
-
-message TunnelEncapSubTLV {
- ENCAP_SUBTLV_TYPE type = 1;
- string value = 2;
- uint32 key = 3;
- string cookie = 4;
- uint32 protocol = 5;
- uint32 color = 6;
-}
-
-message TunnelEncapTLV {
- TUNNEL_TYPE type = 1;
- repeated TunnelEncapSubTLV sub_tlv = 2;
-}
-
-message PmsiTunnel {
- bool is_leaf_info_required = 1;
- PMSI_TUNNEL_TYPE type = 2;
- uint32 label = 3;
- string tunnel_id = 4;
-}
-
-enum BGP_ATTR_TYPE {
- UNKNOWN_ATTR = 0;
- ORIGIN = 1;
- AS_PATH = 2;
- NEXT_HOP = 3;
- MULTI_EXIT_DISC = 4;
- LOCAL_PREF = 5;
- ATOMIC_AGGREGATE = 6;
- AGGREGATOR = 7;
- COMMUNITIES = 8;
- ORIGINATOR_ID = 9;
- CLUSTER_LIST = 10;
- MP_REACH_NLRI = 14;
- MP_UNREACH_NLRI = 15;
- EXTENDED_COMMUNITIES = 16;
- AS4_PATH = 17;
- AS4_AGGREGATOR = 18;
- PMSI_TUNNEL = 22;
- TUNNEL_ENCAP = 23;
-}
-
-message PathAttr {
- BGP_ATTR_TYPE type = 1;
- repeated string value = 2;
- Origin origin = 3;
- repeated AsPath as_paths = 4;
- string nexthop = 5;
- uint32 metric = 6;
- uint32 pref = 7;
- Aggregator aggregator = 8;
- repeated uint32 communites = 9;
- string originator = 10;
- repeated string cluster = 11;
- repeated Nlri nlri = 12;
- repeated TunnelEncapTLV tunnel_encap = 13;
- repeated ExtendedCommunity extended_communities = 16;
- PmsiTunnel pmsi_tunnel = 14;
-}
-
-message AsPath {
- uint32 segment_type = 1;
- repeated uint32 asns = 2;
-}
-
message Path {
- Nlri nlri = 1;
- string nexthop = 2;
+ bytes nlri = 1;
+ repeated bytes pattrs = 2;
int64 age = 3;
- repeated PathAttr attrs = 4;
- bool best = 5;
- bool is_withdraw = 6;
+ bool best = 4;
+ bool is_withdraw = 5;
}
message Destination {
string prefix = 1;
repeated Path paths = 2;
- uint32 best_path_idx = 3;
}
message PeerConf {