Files
osrg-gobgp/api/capability.pb.go
T
Donatas Abraitis 27b80a935b bgp: Implement BGP link-bandwidth extended community
Receiving
=========

Extended communities sent from FRR side:

```
route-map lb permit 10
 set extcommunity bandwidth 10
 set extcommunity soo 65001:123
exit
```

On GoBGP side it's decoded as 125000 as IEEE floating-point.

```
% sudo ./gobgp global rib 192.168.100.1/32 --json | jq '."192.168.100.1/32"'
[
  {
    "nlri": {
      "prefix": "192.168.100.1/32"
    },
    "age": 1632128843,
    "best": true,
    "attrs": [
      {
        "type": 1,
        "value": 2
      },
      {
        "type": 2,
        "as_paths": [
          {
            "segment_type": 2,
            "num": 1,
            "asns": [
              65534
            ]
          }
        ]
      },
      {
        "type": 3,
        "nexthop": "192.168.10.123"
      },
      {
        "type": 4,
        "metric": 0
      },
      {
        "type": 16,
        "value": [
          {
            "type": 64,
            "subtype": 4,
            "asn": 65534,
            "bandwidth": 1250000
          },
          {
            "type": 0,
            "subtype": 3,
            "value": "65001:123"
          }
        ]
      }
    ],
    "stale": false,
    "source-id": "192.168.100.2",
    "neighbor-ip": "192.168.10.123"
  }
]
```

Sending
=======

When sending from GoBGP side:

```
[[policy-definitions]]
    name = "policy1"
    [[policy-definitions.statements]]
        [policy-definitions.statements.actions.bgp-actions.set-ext-community]
			options = "replace"
			[policy-definitions.statements.actions.bgp-actions.set-ext-community.set-ext-community-method]
				communities-list = ["lb:65021:125000"]

```

We get properly encoded/decoded in FRR as well:

```
~# vtysh -c 'show ip bgp 10.33.0.0/16 json' | grep 'LB:'
        "string":"RT:300:400 SoO:100:200 LB:65021:125000 (1.000 Mbps)"
```

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-11-04 20:12:58 +09:00

801 lines
32 KiB
Go

// Code generated by protoc-gen-go. DO NOT EDIT.
// source: capability.proto
package gobgpapi
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
type AddPathMode int32
const (
AddPathMode_MODE_NONE AddPathMode = 0
AddPathMode_MODE_RECEIVE AddPathMode = 1
AddPathMode_MODE_SEND AddPathMode = 2
AddPathMode_MODE_BOTH AddPathMode = 3
)
var AddPathMode_name = map[int32]string{
0: "MODE_NONE",
1: "MODE_RECEIVE",
2: "MODE_SEND",
3: "MODE_BOTH",
}
var AddPathMode_value = map[string]int32{
"MODE_NONE": 0,
"MODE_RECEIVE": 1,
"MODE_SEND": 2,
"MODE_BOTH": 3,
}
func (x AddPathMode) String() string {
return proto.EnumName(AddPathMode_name, int32(x))
}
func (AddPathMode) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{0}
}
type MultiProtocolCapability struct {
Family *Family `protobuf:"bytes,1,opt,name=family,proto3" json:"family,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *MultiProtocolCapability) Reset() { *m = MultiProtocolCapability{} }
func (m *MultiProtocolCapability) String() string { return proto.CompactTextString(m) }
func (*MultiProtocolCapability) ProtoMessage() {}
func (*MultiProtocolCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{0}
}
func (m *MultiProtocolCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MultiProtocolCapability.Unmarshal(m, b)
}
func (m *MultiProtocolCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_MultiProtocolCapability.Marshal(b, m, deterministic)
}
func (m *MultiProtocolCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_MultiProtocolCapability.Merge(m, src)
}
func (m *MultiProtocolCapability) XXX_Size() int {
return xxx_messageInfo_MultiProtocolCapability.Size(m)
}
func (m *MultiProtocolCapability) XXX_DiscardUnknown() {
xxx_messageInfo_MultiProtocolCapability.DiscardUnknown(m)
}
var xxx_messageInfo_MultiProtocolCapability proto.InternalMessageInfo
func (m *MultiProtocolCapability) GetFamily() *Family {
if m != nil {
return m.Family
}
return nil
}
type RouteRefreshCapability struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RouteRefreshCapability) Reset() { *m = RouteRefreshCapability{} }
func (m *RouteRefreshCapability) String() string { return proto.CompactTextString(m) }
func (*RouteRefreshCapability) ProtoMessage() {}
func (*RouteRefreshCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{1}
}
func (m *RouteRefreshCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RouteRefreshCapability.Unmarshal(m, b)
}
func (m *RouteRefreshCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RouteRefreshCapability.Marshal(b, m, deterministic)
}
func (m *RouteRefreshCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_RouteRefreshCapability.Merge(m, src)
}
func (m *RouteRefreshCapability) XXX_Size() int {
return xxx_messageInfo_RouteRefreshCapability.Size(m)
}
func (m *RouteRefreshCapability) XXX_DiscardUnknown() {
xxx_messageInfo_RouteRefreshCapability.DiscardUnknown(m)
}
var xxx_messageInfo_RouteRefreshCapability proto.InternalMessageInfo
type CarryingLabelInfoCapability struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CarryingLabelInfoCapability) Reset() { *m = CarryingLabelInfoCapability{} }
func (m *CarryingLabelInfoCapability) String() string { return proto.CompactTextString(m) }
func (*CarryingLabelInfoCapability) ProtoMessage() {}
func (*CarryingLabelInfoCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{2}
}
func (m *CarryingLabelInfoCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CarryingLabelInfoCapability.Unmarshal(m, b)
}
func (m *CarryingLabelInfoCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CarryingLabelInfoCapability.Marshal(b, m, deterministic)
}
func (m *CarryingLabelInfoCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_CarryingLabelInfoCapability.Merge(m, src)
}
func (m *CarryingLabelInfoCapability) XXX_Size() int {
return xxx_messageInfo_CarryingLabelInfoCapability.Size(m)
}
func (m *CarryingLabelInfoCapability) XXX_DiscardUnknown() {
xxx_messageInfo_CarryingLabelInfoCapability.DiscardUnknown(m)
}
var xxx_messageInfo_CarryingLabelInfoCapability proto.InternalMessageInfo
type ExtendedNexthopCapabilityTuple struct {
NlriFamily *Family `protobuf:"bytes,1,opt,name=nlri_family,json=nlriFamily,proto3" json:"nlri_family,omitempty"`
// Nexthop AFI must be either
// gobgp.IPv4 or
// gobgp.IPv6.
NexthopFamily *Family `protobuf:"bytes,2,opt,name=nexthop_family,json=nexthopFamily,proto3" json:"nexthop_family,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ExtendedNexthopCapabilityTuple) Reset() { *m = ExtendedNexthopCapabilityTuple{} }
func (m *ExtendedNexthopCapabilityTuple) String() string { return proto.CompactTextString(m) }
func (*ExtendedNexthopCapabilityTuple) ProtoMessage() {}
func (*ExtendedNexthopCapabilityTuple) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{3}
}
func (m *ExtendedNexthopCapabilityTuple) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ExtendedNexthopCapabilityTuple.Unmarshal(m, b)
}
func (m *ExtendedNexthopCapabilityTuple) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ExtendedNexthopCapabilityTuple.Marshal(b, m, deterministic)
}
func (m *ExtendedNexthopCapabilityTuple) XXX_Merge(src proto.Message) {
xxx_messageInfo_ExtendedNexthopCapabilityTuple.Merge(m, src)
}
func (m *ExtendedNexthopCapabilityTuple) XXX_Size() int {
return xxx_messageInfo_ExtendedNexthopCapabilityTuple.Size(m)
}
func (m *ExtendedNexthopCapabilityTuple) XXX_DiscardUnknown() {
xxx_messageInfo_ExtendedNexthopCapabilityTuple.DiscardUnknown(m)
}
var xxx_messageInfo_ExtendedNexthopCapabilityTuple proto.InternalMessageInfo
func (m *ExtendedNexthopCapabilityTuple) GetNlriFamily() *Family {
if m != nil {
return m.NlriFamily
}
return nil
}
func (m *ExtendedNexthopCapabilityTuple) GetNexthopFamily() *Family {
if m != nil {
return m.NexthopFamily
}
return nil
}
type ExtendedNexthopCapability struct {
Tuples []*ExtendedNexthopCapabilityTuple `protobuf:"bytes,1,rep,name=tuples,proto3" json:"tuples,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ExtendedNexthopCapability) Reset() { *m = ExtendedNexthopCapability{} }
func (m *ExtendedNexthopCapability) String() string { return proto.CompactTextString(m) }
func (*ExtendedNexthopCapability) ProtoMessage() {}
func (*ExtendedNexthopCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{4}
}
func (m *ExtendedNexthopCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ExtendedNexthopCapability.Unmarshal(m, b)
}
func (m *ExtendedNexthopCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ExtendedNexthopCapability.Marshal(b, m, deterministic)
}
func (m *ExtendedNexthopCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_ExtendedNexthopCapability.Merge(m, src)
}
func (m *ExtendedNexthopCapability) XXX_Size() int {
return xxx_messageInfo_ExtendedNexthopCapability.Size(m)
}
func (m *ExtendedNexthopCapability) XXX_DiscardUnknown() {
xxx_messageInfo_ExtendedNexthopCapability.DiscardUnknown(m)
}
var xxx_messageInfo_ExtendedNexthopCapability proto.InternalMessageInfo
func (m *ExtendedNexthopCapability) GetTuples() []*ExtendedNexthopCapabilityTuple {
if m != nil {
return m.Tuples
}
return nil
}
type GracefulRestartCapabilityTuple struct {
Family *Family `protobuf:"bytes,1,opt,name=family,proto3" json:"family,omitempty"`
Flags uint32 `protobuf:"varint,2,opt,name=flags,proto3" json:"flags,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *GracefulRestartCapabilityTuple) Reset() { *m = GracefulRestartCapabilityTuple{} }
func (m *GracefulRestartCapabilityTuple) String() string { return proto.CompactTextString(m) }
func (*GracefulRestartCapabilityTuple) ProtoMessage() {}
func (*GracefulRestartCapabilityTuple) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{5}
}
func (m *GracefulRestartCapabilityTuple) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GracefulRestartCapabilityTuple.Unmarshal(m, b)
}
func (m *GracefulRestartCapabilityTuple) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_GracefulRestartCapabilityTuple.Marshal(b, m, deterministic)
}
func (m *GracefulRestartCapabilityTuple) XXX_Merge(src proto.Message) {
xxx_messageInfo_GracefulRestartCapabilityTuple.Merge(m, src)
}
func (m *GracefulRestartCapabilityTuple) XXX_Size() int {
return xxx_messageInfo_GracefulRestartCapabilityTuple.Size(m)
}
func (m *GracefulRestartCapabilityTuple) XXX_DiscardUnknown() {
xxx_messageInfo_GracefulRestartCapabilityTuple.DiscardUnknown(m)
}
var xxx_messageInfo_GracefulRestartCapabilityTuple proto.InternalMessageInfo
func (m *GracefulRestartCapabilityTuple) GetFamily() *Family {
if m != nil {
return m.Family
}
return nil
}
func (m *GracefulRestartCapabilityTuple) GetFlags() uint32 {
if m != nil {
return m.Flags
}
return 0
}
type GracefulRestartCapability struct {
Flags uint32 `protobuf:"varint,1,opt,name=flags,proto3" json:"flags,omitempty"`
Time uint32 `protobuf:"varint,2,opt,name=time,proto3" json:"time,omitempty"`
Tuples []*GracefulRestartCapabilityTuple `protobuf:"bytes,3,rep,name=tuples,proto3" json:"tuples,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *GracefulRestartCapability) Reset() { *m = GracefulRestartCapability{} }
func (m *GracefulRestartCapability) String() string { return proto.CompactTextString(m) }
func (*GracefulRestartCapability) ProtoMessage() {}
func (*GracefulRestartCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{6}
}
func (m *GracefulRestartCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GracefulRestartCapability.Unmarshal(m, b)
}
func (m *GracefulRestartCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_GracefulRestartCapability.Marshal(b, m, deterministic)
}
func (m *GracefulRestartCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_GracefulRestartCapability.Merge(m, src)
}
func (m *GracefulRestartCapability) XXX_Size() int {
return xxx_messageInfo_GracefulRestartCapability.Size(m)
}
func (m *GracefulRestartCapability) XXX_DiscardUnknown() {
xxx_messageInfo_GracefulRestartCapability.DiscardUnknown(m)
}
var xxx_messageInfo_GracefulRestartCapability proto.InternalMessageInfo
func (m *GracefulRestartCapability) GetFlags() uint32 {
if m != nil {
return m.Flags
}
return 0
}
func (m *GracefulRestartCapability) GetTime() uint32 {
if m != nil {
return m.Time
}
return 0
}
func (m *GracefulRestartCapability) GetTuples() []*GracefulRestartCapabilityTuple {
if m != nil {
return m.Tuples
}
return nil
}
type FourOctetASNumberCapability struct {
As uint32 `protobuf:"varint,1,opt,name=as,proto3" json:"as,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *FourOctetASNumberCapability) Reset() { *m = FourOctetASNumberCapability{} }
func (m *FourOctetASNumberCapability) String() string { return proto.CompactTextString(m) }
func (*FourOctetASNumberCapability) ProtoMessage() {}
func (*FourOctetASNumberCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{7}
}
func (m *FourOctetASNumberCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FourOctetASNumberCapability.Unmarshal(m, b)
}
func (m *FourOctetASNumberCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_FourOctetASNumberCapability.Marshal(b, m, deterministic)
}
func (m *FourOctetASNumberCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_FourOctetASNumberCapability.Merge(m, src)
}
func (m *FourOctetASNumberCapability) XXX_Size() int {
return xxx_messageInfo_FourOctetASNumberCapability.Size(m)
}
func (m *FourOctetASNumberCapability) XXX_DiscardUnknown() {
xxx_messageInfo_FourOctetASNumberCapability.DiscardUnknown(m)
}
var xxx_messageInfo_FourOctetASNumberCapability proto.InternalMessageInfo
func (m *FourOctetASNumberCapability) GetAs() uint32 {
if m != nil {
return m.As
}
return 0
}
type AddPathCapabilityTuple struct {
Family *Family `protobuf:"bytes,1,opt,name=family,proto3" json:"family,omitempty"`
Mode AddPathMode `protobuf:"varint,2,opt,name=mode,proto3,enum=gobgpapi.AddPathMode" json:"mode,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *AddPathCapabilityTuple) Reset() { *m = AddPathCapabilityTuple{} }
func (m *AddPathCapabilityTuple) String() string { return proto.CompactTextString(m) }
func (*AddPathCapabilityTuple) ProtoMessage() {}
func (*AddPathCapabilityTuple) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{8}
}
func (m *AddPathCapabilityTuple) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddPathCapabilityTuple.Unmarshal(m, b)
}
func (m *AddPathCapabilityTuple) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_AddPathCapabilityTuple.Marshal(b, m, deterministic)
}
func (m *AddPathCapabilityTuple) XXX_Merge(src proto.Message) {
xxx_messageInfo_AddPathCapabilityTuple.Merge(m, src)
}
func (m *AddPathCapabilityTuple) XXX_Size() int {
return xxx_messageInfo_AddPathCapabilityTuple.Size(m)
}
func (m *AddPathCapabilityTuple) XXX_DiscardUnknown() {
xxx_messageInfo_AddPathCapabilityTuple.DiscardUnknown(m)
}
var xxx_messageInfo_AddPathCapabilityTuple proto.InternalMessageInfo
func (m *AddPathCapabilityTuple) GetFamily() *Family {
if m != nil {
return m.Family
}
return nil
}
func (m *AddPathCapabilityTuple) GetMode() AddPathMode {
if m != nil {
return m.Mode
}
return AddPathMode_MODE_NONE
}
type AddPathCapability struct {
Tuples []*AddPathCapabilityTuple `protobuf:"bytes,1,rep,name=tuples,proto3" json:"tuples,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *AddPathCapability) Reset() { *m = AddPathCapability{} }
func (m *AddPathCapability) String() string { return proto.CompactTextString(m) }
func (*AddPathCapability) ProtoMessage() {}
func (*AddPathCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{9}
}
func (m *AddPathCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddPathCapability.Unmarshal(m, b)
}
func (m *AddPathCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_AddPathCapability.Marshal(b, m, deterministic)
}
func (m *AddPathCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_AddPathCapability.Merge(m, src)
}
func (m *AddPathCapability) XXX_Size() int {
return xxx_messageInfo_AddPathCapability.Size(m)
}
func (m *AddPathCapability) XXX_DiscardUnknown() {
xxx_messageInfo_AddPathCapability.DiscardUnknown(m)
}
var xxx_messageInfo_AddPathCapability proto.InternalMessageInfo
func (m *AddPathCapability) GetTuples() []*AddPathCapabilityTuple {
if m != nil {
return m.Tuples
}
return nil
}
type EnhancedRouteRefreshCapability struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *EnhancedRouteRefreshCapability) Reset() { *m = EnhancedRouteRefreshCapability{} }
func (m *EnhancedRouteRefreshCapability) String() string { return proto.CompactTextString(m) }
func (*EnhancedRouteRefreshCapability) ProtoMessage() {}
func (*EnhancedRouteRefreshCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{10}
}
func (m *EnhancedRouteRefreshCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_EnhancedRouteRefreshCapability.Unmarshal(m, b)
}
func (m *EnhancedRouteRefreshCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_EnhancedRouteRefreshCapability.Marshal(b, m, deterministic)
}
func (m *EnhancedRouteRefreshCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_EnhancedRouteRefreshCapability.Merge(m, src)
}
func (m *EnhancedRouteRefreshCapability) XXX_Size() int {
return xxx_messageInfo_EnhancedRouteRefreshCapability.Size(m)
}
func (m *EnhancedRouteRefreshCapability) XXX_DiscardUnknown() {
xxx_messageInfo_EnhancedRouteRefreshCapability.DiscardUnknown(m)
}
var xxx_messageInfo_EnhancedRouteRefreshCapability proto.InternalMessageInfo
type LongLivedGracefulRestartCapabilityTuple struct {
Family *Family `protobuf:"bytes,1,opt,name=family,proto3" json:"family,omitempty"`
Flags uint32 `protobuf:"varint,2,opt,name=flags,proto3" json:"flags,omitempty"`
Time uint32 `protobuf:"varint,3,opt,name=time,proto3" json:"time,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *LongLivedGracefulRestartCapabilityTuple) Reset() {
*m = LongLivedGracefulRestartCapabilityTuple{}
}
func (m *LongLivedGracefulRestartCapabilityTuple) String() string { return proto.CompactTextString(m) }
func (*LongLivedGracefulRestartCapabilityTuple) ProtoMessage() {}
func (*LongLivedGracefulRestartCapabilityTuple) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{11}
}
func (m *LongLivedGracefulRestartCapabilityTuple) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LongLivedGracefulRestartCapabilityTuple.Unmarshal(m, b)
}
func (m *LongLivedGracefulRestartCapabilityTuple) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_LongLivedGracefulRestartCapabilityTuple.Marshal(b, m, deterministic)
}
func (m *LongLivedGracefulRestartCapabilityTuple) XXX_Merge(src proto.Message) {
xxx_messageInfo_LongLivedGracefulRestartCapabilityTuple.Merge(m, src)
}
func (m *LongLivedGracefulRestartCapabilityTuple) XXX_Size() int {
return xxx_messageInfo_LongLivedGracefulRestartCapabilityTuple.Size(m)
}
func (m *LongLivedGracefulRestartCapabilityTuple) XXX_DiscardUnknown() {
xxx_messageInfo_LongLivedGracefulRestartCapabilityTuple.DiscardUnknown(m)
}
var xxx_messageInfo_LongLivedGracefulRestartCapabilityTuple proto.InternalMessageInfo
func (m *LongLivedGracefulRestartCapabilityTuple) GetFamily() *Family {
if m != nil {
return m.Family
}
return nil
}
func (m *LongLivedGracefulRestartCapabilityTuple) GetFlags() uint32 {
if m != nil {
return m.Flags
}
return 0
}
func (m *LongLivedGracefulRestartCapabilityTuple) GetTime() uint32 {
if m != nil {
return m.Time
}
return 0
}
type LongLivedGracefulRestartCapability struct {
Tuples []*LongLivedGracefulRestartCapabilityTuple `protobuf:"bytes,1,rep,name=tuples,proto3" json:"tuples,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *LongLivedGracefulRestartCapability) Reset() { *m = LongLivedGracefulRestartCapability{} }
func (m *LongLivedGracefulRestartCapability) String() string { return proto.CompactTextString(m) }
func (*LongLivedGracefulRestartCapability) ProtoMessage() {}
func (*LongLivedGracefulRestartCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{12}
}
func (m *LongLivedGracefulRestartCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LongLivedGracefulRestartCapability.Unmarshal(m, b)
}
func (m *LongLivedGracefulRestartCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_LongLivedGracefulRestartCapability.Marshal(b, m, deterministic)
}
func (m *LongLivedGracefulRestartCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_LongLivedGracefulRestartCapability.Merge(m, src)
}
func (m *LongLivedGracefulRestartCapability) XXX_Size() int {
return xxx_messageInfo_LongLivedGracefulRestartCapability.Size(m)
}
func (m *LongLivedGracefulRestartCapability) XXX_DiscardUnknown() {
xxx_messageInfo_LongLivedGracefulRestartCapability.DiscardUnknown(m)
}
var xxx_messageInfo_LongLivedGracefulRestartCapability proto.InternalMessageInfo
func (m *LongLivedGracefulRestartCapability) GetTuples() []*LongLivedGracefulRestartCapabilityTuple {
if m != nil {
return m.Tuples
}
return nil
}
type RouteRefreshCiscoCapability struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RouteRefreshCiscoCapability) Reset() { *m = RouteRefreshCiscoCapability{} }
func (m *RouteRefreshCiscoCapability) String() string { return proto.CompactTextString(m) }
func (*RouteRefreshCiscoCapability) ProtoMessage() {}
func (*RouteRefreshCiscoCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{13}
}
func (m *RouteRefreshCiscoCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RouteRefreshCiscoCapability.Unmarshal(m, b)
}
func (m *RouteRefreshCiscoCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RouteRefreshCiscoCapability.Marshal(b, m, deterministic)
}
func (m *RouteRefreshCiscoCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_RouteRefreshCiscoCapability.Merge(m, src)
}
func (m *RouteRefreshCiscoCapability) XXX_Size() int {
return xxx_messageInfo_RouteRefreshCiscoCapability.Size(m)
}
func (m *RouteRefreshCiscoCapability) XXX_DiscardUnknown() {
xxx_messageInfo_RouteRefreshCiscoCapability.DiscardUnknown(m)
}
var xxx_messageInfo_RouteRefreshCiscoCapability proto.InternalMessageInfo
type FQDNCapability struct {
HostNameLen uint32 `protobuf:"varint,1,opt,name=host_name_len,json=hostNameLen,proto3" json:"host_name_len,omitempty"`
HostName string `protobuf:"bytes,2,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"`
DomainNameLen uint32 `protobuf:"varint,3,opt,name=domain_name_len,json=domainNameLen,proto3" json:"domain_name_len,omitempty"`
DomainName string `protobuf:"bytes,4,opt,name=domain_name,json=domainName,proto3" json:"domain_name,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *FQDNCapability) Reset() { *m = FQDNCapability{} }
func (m *FQDNCapability) String() string { return proto.CompactTextString(m) }
func (*FQDNCapability) ProtoMessage() {}
func (*FQDNCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{14}
}
func (m *FQDNCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FQDNCapability.Unmarshal(m, b)
}
func (m *FQDNCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_FQDNCapability.Marshal(b, m, deterministic)
}
func (m *FQDNCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_FQDNCapability.Merge(m, src)
}
func (m *FQDNCapability) XXX_Size() int {
return xxx_messageInfo_FQDNCapability.Size(m)
}
func (m *FQDNCapability) XXX_DiscardUnknown() {
xxx_messageInfo_FQDNCapability.DiscardUnknown(m)
}
var xxx_messageInfo_FQDNCapability proto.InternalMessageInfo
func (m *FQDNCapability) GetHostNameLen() uint32 {
if m != nil {
return m.HostNameLen
}
return 0
}
func (m *FQDNCapability) GetHostName() string {
if m != nil {
return m.HostName
}
return ""
}
func (m *FQDNCapability) GetDomainNameLen() uint32 {
if m != nil {
return m.DomainNameLen
}
return 0
}
func (m *FQDNCapability) GetDomainName() string {
if m != nil {
return m.DomainName
}
return ""
}
type UnknownCapability struct {
Code uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *UnknownCapability) Reset() { *m = UnknownCapability{} }
func (m *UnknownCapability) String() string { return proto.CompactTextString(m) }
func (*UnknownCapability) ProtoMessage() {}
func (*UnknownCapability) Descriptor() ([]byte, []int) {
return fileDescriptor_f2310f95efbbe3ac, []int{15}
}
func (m *UnknownCapability) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UnknownCapability.Unmarshal(m, b)
}
func (m *UnknownCapability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_UnknownCapability.Marshal(b, m, deterministic)
}
func (m *UnknownCapability) XXX_Merge(src proto.Message) {
xxx_messageInfo_UnknownCapability.Merge(m, src)
}
func (m *UnknownCapability) XXX_Size() int {
return xxx_messageInfo_UnknownCapability.Size(m)
}
func (m *UnknownCapability) XXX_DiscardUnknown() {
xxx_messageInfo_UnknownCapability.DiscardUnknown(m)
}
var xxx_messageInfo_UnknownCapability proto.InternalMessageInfo
func (m *UnknownCapability) GetCode() uint32 {
if m != nil {
return m.Code
}
return 0
}
func (m *UnknownCapability) GetValue() []byte {
if m != nil {
return m.Value
}
return nil
}
func init() {
proto.RegisterEnum("gobgpapi.AddPathMode", AddPathMode_name, AddPathMode_value)
proto.RegisterType((*MultiProtocolCapability)(nil), "gobgpapi.MultiProtocolCapability")
proto.RegisterType((*RouteRefreshCapability)(nil), "gobgpapi.RouteRefreshCapability")
proto.RegisterType((*CarryingLabelInfoCapability)(nil), "gobgpapi.CarryingLabelInfoCapability")
proto.RegisterType((*ExtendedNexthopCapabilityTuple)(nil), "gobgpapi.ExtendedNexthopCapabilityTuple")
proto.RegisterType((*ExtendedNexthopCapability)(nil), "gobgpapi.ExtendedNexthopCapability")
proto.RegisterType((*GracefulRestartCapabilityTuple)(nil), "gobgpapi.GracefulRestartCapabilityTuple")
proto.RegisterType((*GracefulRestartCapability)(nil), "gobgpapi.GracefulRestartCapability")
proto.RegisterType((*FourOctetASNumberCapability)(nil), "gobgpapi.FourOctetASNumberCapability")
proto.RegisterType((*AddPathCapabilityTuple)(nil), "gobgpapi.AddPathCapabilityTuple")
proto.RegisterType((*AddPathCapability)(nil), "gobgpapi.AddPathCapability")
proto.RegisterType((*EnhancedRouteRefreshCapability)(nil), "gobgpapi.EnhancedRouteRefreshCapability")
proto.RegisterType((*LongLivedGracefulRestartCapabilityTuple)(nil), "gobgpapi.LongLivedGracefulRestartCapabilityTuple")
proto.RegisterType((*LongLivedGracefulRestartCapability)(nil), "gobgpapi.LongLivedGracefulRestartCapability")
proto.RegisterType((*RouteRefreshCiscoCapability)(nil), "gobgpapi.RouteRefreshCiscoCapability")
proto.RegisterType((*FQDNCapability)(nil), "gobgpapi.FQDNCapability")
proto.RegisterType((*UnknownCapability)(nil), "gobgpapi.UnknownCapability")
}
func init() { proto.RegisterFile("capability.proto", fileDescriptor_f2310f95efbbe3ac) }
var fileDescriptor_f2310f95efbbe3ac = []byte{
// 590 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0xc1, 0x6e, 0xd3, 0x40,
0x10, 0xc5, 0x49, 0xa8, 0xda, 0x71, 0x13, 0xdc, 0x15, 0x94, 0x94, 0xa8, 0x25, 0xda, 0x03, 0x04,
0x24, 0x22, 0x35, 0x1c, 0xe0, 0x82, 0x44, 0x49, 0x1c, 0x88, 0x94, 0x38, 0xc5, 0x2d, 0xdc, 0x50,
0xd8, 0xd8, 0x9b, 0xc4, 0xc2, 0xde, 0xb5, 0xec, 0x75, 0x69, 0x0e, 0x9c, 0xb9, 0xf0, 0x05, 0x7c,
0x2d, 0xb2, 0xd7, 0xb1, 0x4d, 0xaa, 0xb4, 0x15, 0x12, 0xb7, 0x9d, 0x9d, 0x37, 0x6f, 0xde, 0x9b,
0x1d, 0x1b, 0x34, 0x8b, 0xf8, 0x64, 0xea, 0xb8, 0x8e, 0x58, 0xb6, 0xfd, 0x80, 0x0b, 0x8e, 0xb6,
0xe7, 0x7c, 0x3a, 0xf7, 0x89, 0xef, 0x3c, 0x52, 0x93, 0x93, 0xbc, 0xc6, 0x5d, 0x78, 0x38, 0x8a,
0x5c, 0xe1, 0x9c, 0xc6, 0x91, 0xc5, 0xdd, 0x6e, 0x56, 0x87, 0x5a, 0xb0, 0x35, 0x23, 0x9e, 0xe3,
0x2e, 0xeb, 0x4a, 0x53, 0x69, 0xa9, 0x1d, 0xad, 0xbd, 0xa2, 0x68, 0xf7, 0x93, 0x7b, 0x33, 0xcd,
0xe3, 0x3a, 0xec, 0x9b, 0x3c, 0x12, 0xd4, 0xa4, 0xb3, 0x80, 0x86, 0x8b, 0x9c, 0x03, 0x1f, 0x42,
0xa3, 0x4b, 0x82, 0x60, 0xe9, 0xb0, 0xf9, 0x90, 0x4c, 0xa9, 0x3b, 0x60, 0x33, 0x5e, 0x48, 0xff,
0x52, 0xe0, 0x48, 0xbf, 0x14, 0x94, 0xd9, 0xd4, 0x36, 0xe8, 0xa5, 0x58, 0x70, 0x3f, 0xcf, 0x9e,
0x47, 0xbe, 0x4b, 0xd1, 0x31, 0xa8, 0xcc, 0x0d, 0x9c, 0xc9, 0x0d, 0x52, 0x20, 0x06, 0xc9, 0x33,
0x7a, 0x05, 0x35, 0x26, 0xc9, 0x56, 0x55, 0xa5, 0x0d, 0x55, 0xd5, 0x14, 0x27, 0x43, 0xfc, 0x05,
0x0e, 0x36, 0xaa, 0x41, 0x6f, 0x61, 0x4b, 0xc4, 0x8a, 0xc2, 0xba, 0xd2, 0x2c, 0xb7, 0xd4, 0x4e,
0x2b, 0x67, 0xbb, 0xde, 0x82, 0x99, 0xd6, 0xe1, 0xaf, 0x70, 0xf4, 0x3e, 0x20, 0x16, 0x9d, 0x45,
0xae, 0x49, 0x43, 0x41, 0x02, 0xb1, 0x6e, 0xf6, 0xd6, 0x23, 0x47, 0xf7, 0xe1, 0xee, 0xcc, 0x25,
0xf3, 0x30, 0xb1, 0x56, 0x35, 0x65, 0x80, 0x7f, 0x2a, 0x70, 0xb0, 0xb1, 0x45, 0x5e, 0xa3, 0x14,
0x6a, 0x10, 0x82, 0x8a, 0x70, 0x3c, 0x9a, 0x12, 0x25, 0xe7, 0x82, 0xd7, 0xf2, 0xba, 0xd7, 0xeb,
0x1d, 0x64, 0x5e, 0x5f, 0x40, 0xa3, 0xcf, 0xa3, 0x60, 0x6c, 0x09, 0x2a, 0x4e, 0xce, 0x8c, 0xc8,
0x9b, 0xd2, 0xa0, 0x20, 0xa5, 0x06, 0x25, 0xb2, 0xd2, 0x51, 0x22, 0x21, 0xf6, 0x60, 0xff, 0xc4,
0xb6, 0x4f, 0x89, 0x58, 0xfc, 0xfb, 0x48, 0x9e, 0x41, 0xc5, 0xe3, 0xb6, 0x34, 0x52, 0xeb, 0x3c,
0xc8, 0x71, 0x29, 0xf3, 0x88, 0xdb, 0xd4, 0x4c, 0x20, 0x78, 0x04, 0x7b, 0x57, 0xda, 0xa1, 0xd7,
0x6b, 0x0f, 0xdc, 0xbc, 0xc2, 0xb0, 0xc9, 0x6c, 0x13, 0x8e, 0x74, 0xb6, 0x20, 0xcc, 0xa2, 0xf6,
0x86, 0xef, 0xe0, 0x07, 0x3c, 0x1d, 0x72, 0x36, 0x1f, 0x3a, 0x17, 0xd4, 0xfe, 0xbf, 0x3b, 0x90,
0xbd, 0x67, 0x39, 0x7f, 0x4f, 0xcc, 0x01, 0xdf, 0xdc, 0x1e, 0x0d, 0xd6, 0x06, 0x70, 0x9c, 0x77,
0xbe, 0xa5, 0xf8, 0x6c, 0x22, 0x87, 0xd0, 0xf8, 0x6b, 0x12, 0x4e, 0x68, 0x15, 0xbf, 0xfb, 0xdf,
0x0a, 0xd4, 0xfa, 0x1f, 0x7b, 0x46, 0xa1, 0x39, 0x86, 0xea, 0x82, 0x87, 0x62, 0xc2, 0x88, 0x47,
0x27, 0x2e, 0x65, 0xe9, 0x72, 0xa8, 0xf1, 0xa5, 0x41, 0x3c, 0x3a, 0xa4, 0x0c, 0x35, 0x60, 0x27,
0xc3, 0x24, 0xa6, 0x77, 0xcc, 0xed, 0x55, 0x1e, 0x3d, 0x81, 0x7b, 0x36, 0xf7, 0x88, 0xc3, 0x72,
0x0a, 0x39, 0x82, 0xaa, 0xbc, 0x5e, 0x91, 0x3c, 0x06, 0xb5, 0x80, 0xab, 0x57, 0x12, 0x1a, 0xc8,
0x31, 0xf8, 0x0d, 0xec, 0x7d, 0x62, 0xdf, 0x18, 0xff, 0xce, 0x0a, 0xf2, 0x10, 0x54, 0xac, 0x78,
0xb9, 0xa4, 0xaa, 0xe4, 0x1c, 0xcf, 0xff, 0x82, 0xb8, 0x91, 0x94, 0xb2, 0x6b, 0xca, 0xe0, 0xf9,
0x10, 0xd4, 0xc2, 0xc2, 0xa1, 0x2a, 0xec, 0x8c, 0xc6, 0x3d, 0x7d, 0x62, 0x8c, 0x0d, 0x5d, 0xbb,
0x83, 0x34, 0xd8, 0x4d, 0x42, 0x53, 0xef, 0xea, 0x83, 0xcf, 0xba, 0xa6, 0x64, 0x80, 0x33, 0xdd,
0xe8, 0x69, 0xa5, 0x2c, 0x7c, 0x37, 0x3e, 0xff, 0xa0, 0x95, 0xa7, 0x5b, 0xc9, 0x6f, 0xfa, 0xe5,
0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x07, 0x77, 0x70, 0x63, 0xd1, 0x05, 0x00, 0x00,
}