Skip to content
Snippets Groups Projects
Unverified Commit 35380602 authored by Christoph Petrausch's avatar Christoph Petrausch Committed by GitHub
Browse files

Implement a GetRouters RPC to RIS (#253)


* Implement a GetRouters RPC to RIS

This RPC returns all configured routers and their VRF IDs. This can be
used by RIS clients to discovery the routers. The router and the VRF ID
is a required parameter for all other RPCs.

* Update grpc to v1.28.0 to support protoc-gen-go v1.21.0

* Fix test

Co-authored-by: default avatarOliver Herms <oliver.peter.herms@gmail.com>
parent 0355454f
No related branches found
No related tags found
No related merge requests found
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.21.0
// protoc v3.11.4
// source: github.com/bio-routing/bio-rd/cmd/ris/api/ris.proto
package api
import (
context "context"
fmt "fmt"
api "github.com/bio-routing/bio-rd/net/api"
api1 "github.com/bio-routing/bio-rd/route/api"
proto "github.com/golang/protobuf/proto"
grpc "google.golang.org/grpc"
math "math"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// 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
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type ObserveRIBRequest_AFISAFI int32
......@@ -31,22 +38,43 @@ const (
ObserveRIBRequest_IPv6Unicast ObserveRIBRequest_AFISAFI = 1
)
var ObserveRIBRequest_AFISAFI_name = map[int32]string{
0: "IPv4Unicast",
1: "IPv6Unicast",
}
// Enum value maps for ObserveRIBRequest_AFISAFI.
var (
ObserveRIBRequest_AFISAFI_name = map[int32]string{
0: "IPv4Unicast",
1: "IPv6Unicast",
}
ObserveRIBRequest_AFISAFI_value = map[string]int32{
"IPv4Unicast": 0,
"IPv6Unicast": 1,
}
)
var ObserveRIBRequest_AFISAFI_value = map[string]int32{
"IPv4Unicast": 0,
"IPv6Unicast": 1,
func (x ObserveRIBRequest_AFISAFI) Enum() *ObserveRIBRequest_AFISAFI {
p := new(ObserveRIBRequest_AFISAFI)
*p = x
return p
}
func (x ObserveRIBRequest_AFISAFI) String() string {
return proto.EnumName(ObserveRIBRequest_AFISAFI_name, int32(x))
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (ObserveRIBRequest_AFISAFI) Descriptor() protoreflect.EnumDescriptor {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_enumTypes[0].Descriptor()
}
func (ObserveRIBRequest_AFISAFI) Type() protoreflect.EnumType {
return &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_enumTypes[0]
}
func (x ObserveRIBRequest_AFISAFI) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use ObserveRIBRequest_AFISAFI.Descriptor instead.
func (ObserveRIBRequest_AFISAFI) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{6, 0}
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{6, 0}
}
type DumpRIBRequest_AFISAFI int32
......@@ -56,566 +84,1111 @@ const (
DumpRIBRequest_IPv6Unicast DumpRIBRequest_AFISAFI = 1
)
var DumpRIBRequest_AFISAFI_name = map[int32]string{
0: "IPv4Unicast",
1: "IPv6Unicast",
}
// Enum value maps for DumpRIBRequest_AFISAFI.
var (
DumpRIBRequest_AFISAFI_name = map[int32]string{
0: "IPv4Unicast",
1: "IPv6Unicast",
}
DumpRIBRequest_AFISAFI_value = map[string]int32{
"IPv4Unicast": 0,
"IPv6Unicast": 1,
}
)
var DumpRIBRequest_AFISAFI_value = map[string]int32{
"IPv4Unicast": 0,
"IPv6Unicast": 1,
func (x DumpRIBRequest_AFISAFI) Enum() *DumpRIBRequest_AFISAFI {
p := new(DumpRIBRequest_AFISAFI)
*p = x
return p
}
func (x DumpRIBRequest_AFISAFI) String() string {
return proto.EnumName(DumpRIBRequest_AFISAFI_name, int32(x))
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (DumpRIBRequest_AFISAFI) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{8, 0}
func (DumpRIBRequest_AFISAFI) Descriptor() protoreflect.EnumDescriptor {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_enumTypes[1].Descriptor()
}
type LPMRequest struct {
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Pfx *api.Prefix `protobuf:"bytes,3,opt,name=pfx,proto3" json:"pfx,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
func (DumpRIBRequest_AFISAFI) Type() protoreflect.EnumType {
return &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_enumTypes[1]
}
func (m *LPMRequest) Reset() { *m = LPMRequest{} }
func (m *LPMRequest) String() string { return proto.CompactTextString(m) }
func (*LPMRequest) ProtoMessage() {}
func (*LPMRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{0}
func (x DumpRIBRequest_AFISAFI) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
func (m *LPMRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LPMRequest.Unmarshal(m, b)
// Deprecated: Use DumpRIBRequest_AFISAFI.Descriptor instead.
func (DumpRIBRequest_AFISAFI) EnumDescriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{8, 0}
}
func (m *LPMRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_LPMRequest.Marshal(b, m, deterministic)
type LPMRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Pfx *api.Prefix `protobuf:"bytes,3,opt,name=pfx,proto3" json:"pfx,omitempty"`
}
func (m *LPMRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_LPMRequest.Merge(m, src)
func (x *LPMRequest) Reset() {
*x = LPMRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *LPMRequest) XXX_Size() int {
return xxx_messageInfo_LPMRequest.Size(m)
func (x *LPMRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *LPMRequest) XXX_DiscardUnknown() {
xxx_messageInfo_LPMRequest.DiscardUnknown(m)
func (*LPMRequest) ProtoMessage() {}
func (x *LPMRequest) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_LPMRequest proto.InternalMessageInfo
// Deprecated: Use LPMRequest.ProtoReflect.Descriptor instead.
func (*LPMRequest) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{0}
}
func (m *LPMRequest) GetRouter() string {
if m != nil {
return m.Router
func (x *LPMRequest) GetRouter() string {
if x != nil {
return x.Router
}
return ""
}
func (m *LPMRequest) GetVrfId() uint64 {
if m != nil {
return m.VrfId
func (x *LPMRequest) GetVrfId() uint64 {
if x != nil {
return x.VrfId
}
return 0
}
func (m *LPMRequest) GetPfx() *api.Prefix {
if m != nil {
return m.Pfx
func (x *LPMRequest) GetPfx() *api.Prefix {
if x != nil {
return x.Pfx
}
return nil
}
type LPMResponse struct {
Routes []*api1.Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
func (m *LPMResponse) Reset() { *m = LPMResponse{} }
func (m *LPMResponse) String() string { return proto.CompactTextString(m) }
func (*LPMResponse) ProtoMessage() {}
func (*LPMResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{1}
Routes []*api1.Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
}
func (m *LPMResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LPMResponse.Unmarshal(m, b)
}
func (m *LPMResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_LPMResponse.Marshal(b, m, deterministic)
}
func (m *LPMResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_LPMResponse.Merge(m, src)
func (x *LPMResponse) Reset() {
*x = LPMResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *LPMResponse) XXX_Size() int {
return xxx_messageInfo_LPMResponse.Size(m)
func (x *LPMResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *LPMResponse) XXX_DiscardUnknown() {
xxx_messageInfo_LPMResponse.DiscardUnknown(m)
func (*LPMResponse) ProtoMessage() {}
func (x *LPMResponse) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_LPMResponse proto.InternalMessageInfo
// Deprecated: Use LPMResponse.ProtoReflect.Descriptor instead.
func (*LPMResponse) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{1}
}
func (m *LPMResponse) GetRoutes() []*api1.Route {
if m != nil {
return m.Routes
func (x *LPMResponse) GetRoutes() []*api1.Route {
if x != nil {
return x.Routes
}
return nil
}
type GetRequest struct {
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Pfx *api.Prefix `protobuf:"bytes,3,opt,name=pfx,proto3" json:"pfx,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
func (m *GetRequest) Reset() { *m = GetRequest{} }
func (m *GetRequest) String() string { return proto.CompactTextString(m) }
func (*GetRequest) ProtoMessage() {}
func (*GetRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{2}
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Pfx *api.Prefix `protobuf:"bytes,3,opt,name=pfx,proto3" json:"pfx,omitempty"`
}
func (m *GetRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetRequest.Unmarshal(m, b)
}
func (m *GetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_GetRequest.Marshal(b, m, deterministic)
}
func (m *GetRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_GetRequest.Merge(m, src)
func (x *GetRequest) Reset() {
*x = GetRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *GetRequest) XXX_Size() int {
return xxx_messageInfo_GetRequest.Size(m)
func (x *GetRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *GetRequest) XXX_DiscardUnknown() {
xxx_messageInfo_GetRequest.DiscardUnknown(m)
func (*GetRequest) ProtoMessage() {}
func (x *GetRequest) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_GetRequest proto.InternalMessageInfo
// Deprecated: Use GetRequest.ProtoReflect.Descriptor instead.
func (*GetRequest) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{2}
}
func (m *GetRequest) GetRouter() string {
if m != nil {
return m.Router
func (x *GetRequest) GetRouter() string {
if x != nil {
return x.Router
}
return ""
}
func (m *GetRequest) GetVrfId() uint64 {
if m != nil {
return m.VrfId
func (x *GetRequest) GetVrfId() uint64 {
if x != nil {
return x.VrfId
}
return 0
}
func (m *GetRequest) GetPfx() *api.Prefix {
if m != nil {
return m.Pfx
func (x *GetRequest) GetPfx() *api.Prefix {
if x != nil {
return x.Pfx
}
return nil
}
type GetResponse struct {
Routes []*api1.Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
func (m *GetResponse) Reset() { *m = GetResponse{} }
func (m *GetResponse) String() string { return proto.CompactTextString(m) }
func (*GetResponse) ProtoMessage() {}
func (*GetResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{3}
Routes []*api1.Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
}
func (m *GetResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetResponse.Unmarshal(m, b)
}
func (m *GetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_GetResponse.Marshal(b, m, deterministic)
}
func (m *GetResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_GetResponse.Merge(m, src)
func (x *GetResponse) Reset() {
*x = GetResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *GetResponse) XXX_Size() int {
return xxx_messageInfo_GetResponse.Size(m)
func (x *GetResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *GetResponse) XXX_DiscardUnknown() {
xxx_messageInfo_GetResponse.DiscardUnknown(m)
func (*GetResponse) ProtoMessage() {}
func (x *GetResponse) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_GetResponse proto.InternalMessageInfo
// Deprecated: Use GetResponse.ProtoReflect.Descriptor instead.
func (*GetResponse) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{3}
}
func (m *GetResponse) GetRoutes() []*api1.Route {
if m != nil {
return m.Routes
func (x *GetResponse) GetRoutes() []*api1.Route {
if x != nil {
return x.Routes
}
return nil
}
type GetLongerRequest struct {
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Pfx *api.Prefix `protobuf:"bytes,3,opt,name=pfx,proto3" json:"pfx,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
func (m *GetLongerRequest) Reset() { *m = GetLongerRequest{} }
func (m *GetLongerRequest) String() string { return proto.CompactTextString(m) }
func (*GetLongerRequest) ProtoMessage() {}
func (*GetLongerRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{4}
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Pfx *api.Prefix `protobuf:"bytes,3,opt,name=pfx,proto3" json:"pfx,omitempty"`
}
func (m *GetLongerRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetLongerRequest.Unmarshal(m, b)
}
func (m *GetLongerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_GetLongerRequest.Marshal(b, m, deterministic)
}
func (m *GetLongerRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_GetLongerRequest.Merge(m, src)
func (x *GetLongerRequest) Reset() {
*x = GetLongerRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *GetLongerRequest) XXX_Size() int {
return xxx_messageInfo_GetLongerRequest.Size(m)
func (x *GetLongerRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *GetLongerRequest) XXX_DiscardUnknown() {
xxx_messageInfo_GetLongerRequest.DiscardUnknown(m)
func (*GetLongerRequest) ProtoMessage() {}
func (x *GetLongerRequest) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_GetLongerRequest proto.InternalMessageInfo
// Deprecated: Use GetLongerRequest.ProtoReflect.Descriptor instead.
func (*GetLongerRequest) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{4}
}
func (m *GetLongerRequest) GetRouter() string {
if m != nil {
return m.Router
func (x *GetLongerRequest) GetRouter() string {
if x != nil {
return x.Router
}
return ""
}
func (m *GetLongerRequest) GetVrfId() uint64 {
if m != nil {
return m.VrfId
func (x *GetLongerRequest) GetVrfId() uint64 {
if x != nil {
return x.VrfId
}
return 0
}
func (m *GetLongerRequest) GetPfx() *api.Prefix {
if m != nil {
return m.Pfx
func (x *GetLongerRequest) GetPfx() *api.Prefix {
if x != nil {
return x.Pfx
}
return nil
}
type GetLongerResponse struct {
Routes []*api1.Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
func (m *GetLongerResponse) Reset() { *m = GetLongerResponse{} }
func (m *GetLongerResponse) String() string { return proto.CompactTextString(m) }
func (*GetLongerResponse) ProtoMessage() {}
func (*GetLongerResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{5}
Routes []*api1.Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
}
func (m *GetLongerResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetLongerResponse.Unmarshal(m, b)
}
func (m *GetLongerResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_GetLongerResponse.Marshal(b, m, deterministic)
}
func (m *GetLongerResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_GetLongerResponse.Merge(m, src)
func (x *GetLongerResponse) Reset() {
*x = GetLongerResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *GetLongerResponse) XXX_Size() int {
return xxx_messageInfo_GetLongerResponse.Size(m)
func (x *GetLongerResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *GetLongerResponse) XXX_DiscardUnknown() {
xxx_messageInfo_GetLongerResponse.DiscardUnknown(m)
func (*GetLongerResponse) ProtoMessage() {}
func (x *GetLongerResponse) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_GetLongerResponse proto.InternalMessageInfo
// Deprecated: Use GetLongerResponse.ProtoReflect.Descriptor instead.
func (*GetLongerResponse) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{5}
}
func (m *GetLongerResponse) GetRoutes() []*api1.Route {
if m != nil {
return m.Routes
func (x *GetLongerResponse) GetRoutes() []*api1.Route {
if x != nil {
return x.Routes
}
return nil
}
type ObserveRIBRequest struct {
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Afisafi ObserveRIBRequest_AFISAFI `protobuf:"varint,3,opt,name=afisafi,proto3,enum=bio.ris.ObserveRIBRequest_AFISAFI" json:"afisafi,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
func (m *ObserveRIBRequest) Reset() { *m = ObserveRIBRequest{} }
func (m *ObserveRIBRequest) String() string { return proto.CompactTextString(m) }
func (*ObserveRIBRequest) ProtoMessage() {}
func (*ObserveRIBRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{6}
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Afisafi ObserveRIBRequest_AFISAFI `protobuf:"varint,3,opt,name=afisafi,proto3,enum=bio.ris.ObserveRIBRequest_AFISAFI" json:"afisafi,omitempty"`
}
func (m *ObserveRIBRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ObserveRIBRequest.Unmarshal(m, b)
}
func (m *ObserveRIBRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ObserveRIBRequest.Marshal(b, m, deterministic)
}
func (m *ObserveRIBRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_ObserveRIBRequest.Merge(m, src)
func (x *ObserveRIBRequest) Reset() {
*x = ObserveRIBRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *ObserveRIBRequest) XXX_Size() int {
return xxx_messageInfo_ObserveRIBRequest.Size(m)
func (x *ObserveRIBRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *ObserveRIBRequest) XXX_DiscardUnknown() {
xxx_messageInfo_ObserveRIBRequest.DiscardUnknown(m)
func (*ObserveRIBRequest) ProtoMessage() {}
func (x *ObserveRIBRequest) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_ObserveRIBRequest proto.InternalMessageInfo
// Deprecated: Use ObserveRIBRequest.ProtoReflect.Descriptor instead.
func (*ObserveRIBRequest) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{6}
}
func (m *ObserveRIBRequest) GetRouter() string {
if m != nil {
return m.Router
func (x *ObserveRIBRequest) GetRouter() string {
if x != nil {
return x.Router
}
return ""
}
func (m *ObserveRIBRequest) GetVrfId() uint64 {
if m != nil {
return m.VrfId
func (x *ObserveRIBRequest) GetVrfId() uint64 {
if x != nil {
return x.VrfId
}
return 0
}
func (m *ObserveRIBRequest) GetAfisafi() ObserveRIBRequest_AFISAFI {
if m != nil {
return m.Afisafi
func (x *ObserveRIBRequest) GetAfisafi() ObserveRIBRequest_AFISAFI {
if x != nil {
return x.Afisafi
}
return ObserveRIBRequest_IPv4Unicast
}
type RIBUpdate struct {
Advertisement bool `protobuf:"varint,1,opt,name=advertisement,proto3" json:"advertisement,omitempty"`
Route *api1.Route `protobuf:"bytes,2,opt,name=route,proto3" json:"route,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
func (m *RIBUpdate) Reset() { *m = RIBUpdate{} }
func (m *RIBUpdate) String() string { return proto.CompactTextString(m) }
func (*RIBUpdate) ProtoMessage() {}
func (*RIBUpdate) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{7}
Advertisement bool `protobuf:"varint,1,opt,name=advertisement,proto3" json:"advertisement,omitempty"`
Route *api1.Route `protobuf:"bytes,2,opt,name=route,proto3" json:"route,omitempty"`
}
func (m *RIBUpdate) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RIBUpdate.Unmarshal(m, b)
}
func (m *RIBUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RIBUpdate.Marshal(b, m, deterministic)
}
func (m *RIBUpdate) XXX_Merge(src proto.Message) {
xxx_messageInfo_RIBUpdate.Merge(m, src)
func (x *RIBUpdate) Reset() {
*x = RIBUpdate{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *RIBUpdate) XXX_Size() int {
return xxx_messageInfo_RIBUpdate.Size(m)
func (x *RIBUpdate) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *RIBUpdate) XXX_DiscardUnknown() {
xxx_messageInfo_RIBUpdate.DiscardUnknown(m)
func (*RIBUpdate) ProtoMessage() {}
func (x *RIBUpdate) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_RIBUpdate proto.InternalMessageInfo
// Deprecated: Use RIBUpdate.ProtoReflect.Descriptor instead.
func (*RIBUpdate) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{7}
}
func (m *RIBUpdate) GetAdvertisement() bool {
if m != nil {
return m.Advertisement
func (x *RIBUpdate) GetAdvertisement() bool {
if x != nil {
return x.Advertisement
}
return false
}
func (m *RIBUpdate) GetRoute() *api1.Route {
if m != nil {
return m.Route
func (x *RIBUpdate) GetRoute() *api1.Route {
if x != nil {
return x.Route
}
return nil
}
type DumpRIBRequest struct {
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Afisafi DumpRIBRequest_AFISAFI `protobuf:"varint,3,opt,name=afisafi,proto3,enum=bio.ris.DumpRIBRequest_AFISAFI" json:"afisafi,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
func (m *DumpRIBRequest) Reset() { *m = DumpRIBRequest{} }
func (m *DumpRIBRequest) String() string { return proto.CompactTextString(m) }
func (*DumpRIBRequest) ProtoMessage() {}
func (*DumpRIBRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{8}
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Afisafi DumpRIBRequest_AFISAFI `protobuf:"varint,3,opt,name=afisafi,proto3,enum=bio.ris.DumpRIBRequest_AFISAFI" json:"afisafi,omitempty"`
}
func (m *DumpRIBRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DumpRIBRequest.Unmarshal(m, b)
}
func (m *DumpRIBRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_DumpRIBRequest.Marshal(b, m, deterministic)
}
func (m *DumpRIBRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_DumpRIBRequest.Merge(m, src)
func (x *DumpRIBRequest) Reset() {
*x = DumpRIBRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *DumpRIBRequest) XXX_Size() int {
return xxx_messageInfo_DumpRIBRequest.Size(m)
func (x *DumpRIBRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *DumpRIBRequest) XXX_DiscardUnknown() {
xxx_messageInfo_DumpRIBRequest.DiscardUnknown(m)
func (*DumpRIBRequest) ProtoMessage() {}
func (x *DumpRIBRequest) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_DumpRIBRequest proto.InternalMessageInfo
// Deprecated: Use DumpRIBRequest.ProtoReflect.Descriptor instead.
func (*DumpRIBRequest) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{8}
}
func (m *DumpRIBRequest) GetRouter() string {
if m != nil {
return m.Router
func (x *DumpRIBRequest) GetRouter() string {
if x != nil {
return x.Router
}
return ""
}
func (m *DumpRIBRequest) GetVrfId() uint64 {
if m != nil {
return m.VrfId
func (x *DumpRIBRequest) GetVrfId() uint64 {
if x != nil {
return x.VrfId
}
return 0
}
func (m *DumpRIBRequest) GetAfisafi() DumpRIBRequest_AFISAFI {
if m != nil {
return m.Afisafi
func (x *DumpRIBRequest) GetAfisafi() DumpRIBRequest_AFISAFI {
if x != nil {
return x.Afisafi
}
return DumpRIBRequest_IPv4Unicast
}
type DumpRIBReply struct {
Route *api1.Route `protobuf:"bytes,1,opt,name=route,proto3" json:"route,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Route *api1.Route `protobuf:"bytes,1,opt,name=route,proto3" json:"route,omitempty"`
}
func (x *DumpRIBReply) Reset() {
*x = DumpRIBReply{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DumpRIBReply) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *DumpRIBReply) Reset() { *m = DumpRIBReply{} }
func (m *DumpRIBReply) String() string { return proto.CompactTextString(m) }
func (*DumpRIBReply) ProtoMessage() {}
func (*DumpRIBReply) ProtoMessage() {}
func (x *DumpRIBReply) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DumpRIBReply.ProtoReflect.Descriptor instead.
func (*DumpRIBReply) Descriptor() ([]byte, []int) {
return fileDescriptor_ffe1202aa518913f, []int{9}
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{9}
}
func (x *DumpRIBReply) GetRoute() *api1.Route {
if x != nil {
return x.Route
}
return nil
}
type GetRoutersRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetRoutersRequest) Reset() {
*x = GetRoutersRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetRoutersRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetRoutersRequest) ProtoMessage() {}
func (x *GetRoutersRequest) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetRoutersRequest.ProtoReflect.Descriptor instead.
func (*GetRoutersRequest) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{10}
}
type Router struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"`
VrfIds []uint64 `protobuf:"varint,2,rep,packed,name=vrf_ids,json=vrfIds,proto3" json:"vrf_ids,omitempty"`
}
func (x *Router) Reset() {
*x = Router{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Router) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Router) ProtoMessage() {}
func (x *Router) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
func (m *DumpRIBReply) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DumpRIBReply.Unmarshal(m, b)
// Deprecated: Use Router.ProtoReflect.Descriptor instead.
func (*Router) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{11}
}
func (m *DumpRIBReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_DumpRIBReply.Marshal(b, m, deterministic)
func (x *Router) GetRouter() string {
if x != nil {
return x.Router
}
return ""
}
func (x *Router) GetVrfIds() []uint64 {
if x != nil {
return x.VrfIds
}
return nil
}
func (m *DumpRIBReply) XXX_Merge(src proto.Message) {
xxx_messageInfo_DumpRIBReply.Merge(m, src)
type GetRoutersResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Routers []*Router `protobuf:"bytes,1,rep,name=routers,proto3" json:"routers,omitempty"`
}
func (m *DumpRIBReply) XXX_Size() int {
return xxx_messageInfo_DumpRIBReply.Size(m)
func (x *GetRoutersResponse) Reset() {
*x = GetRoutersResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *DumpRIBReply) XXX_DiscardUnknown() {
xxx_messageInfo_DumpRIBReply.DiscardUnknown(m)
func (x *GetRoutersResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
var xxx_messageInfo_DumpRIBReply proto.InternalMessageInfo
func (*GetRoutersResponse) ProtoMessage() {}
func (m *DumpRIBReply) GetRoute() *api1.Route {
if m != nil {
return m.Route
func (x *GetRoutersResponse) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetRoutersResponse.ProtoReflect.Descriptor instead.
func (*GetRoutersResponse) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP(), []int{12}
}
func (x *GetRoutersResponse) GetRouters() []*Router {
if x != nil {
return x.Routers
}
return nil
}
func init() {
proto.RegisterEnum("bio.ris.ObserveRIBRequest_AFISAFI", ObserveRIBRequest_AFISAFI_name, ObserveRIBRequest_AFISAFI_value)
proto.RegisterEnum("bio.ris.DumpRIBRequest_AFISAFI", DumpRIBRequest_AFISAFI_name, DumpRIBRequest_AFISAFI_value)
proto.RegisterType((*LPMRequest)(nil), "bio.ris.LPMRequest")
proto.RegisterType((*LPMResponse)(nil), "bio.ris.LPMResponse")
proto.RegisterType((*GetRequest)(nil), "bio.ris.GetRequest")
proto.RegisterType((*GetResponse)(nil), "bio.ris.GetResponse")
proto.RegisterType((*GetLongerRequest)(nil), "bio.ris.GetLongerRequest")
proto.RegisterType((*GetLongerResponse)(nil), "bio.ris.GetLongerResponse")
proto.RegisterType((*ObserveRIBRequest)(nil), "bio.ris.ObserveRIBRequest")
proto.RegisterType((*RIBUpdate)(nil), "bio.ris.RIBUpdate")
proto.RegisterType((*DumpRIBRequest)(nil), "bio.ris.DumpRIBRequest")
proto.RegisterType((*DumpRIBReply)(nil), "bio.ris.DumpRIBReply")
}
func init() {
proto.RegisterFile("github.com/bio-routing/bio-rd/cmd/ris/api/ris.proto", fileDescriptor_ffe1202aa518913f)
}
var fileDescriptor_ffe1202aa518913f = []byte{
// 534 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x94, 0xdf, 0x6f, 0xd3, 0x30,
0x10, 0xc7, 0xeb, 0x95, 0xb5, 0xf4, 0x0a, 0x5b, 0x67, 0x18, 0x74, 0x79, 0xa1, 0x44, 0x08, 0x15,
0x4d, 0x24, 0x53, 0x86, 0x86, 0x10, 0x3f, 0xa4, 0x55, 0xd3, 0xaa, 0x48, 0x9d, 0xa8, 0x3c, 0xed,
0x01, 0x1e, 0x40, 0x49, 0xe3, 0x14, 0x4b, 0x4b, 0x1c, 0x6c, 0x37, 0xda, 0xfe, 0x22, 0x9e, 0xf8,
0x37, 0xf8, 0xbb, 0x50, 0x9c, 0x2c, 0x4d, 0xd9, 0x0f, 0xd8, 0xd0, 0x5e, 0x12, 0xfb, 0x2e, 0xdf,
0xbb, 0x8f, 0x2f, 0x77, 0x86, 0xed, 0x29, 0x53, 0xdf, 0x66, 0xbe, 0x35, 0xe1, 0x91, 0xed, 0x33,
0xfe, 0x52, 0xf0, 0x99, 0x62, 0xf1, 0x34, 0x5f, 0x07, 0xf6, 0x24, 0x0a, 0x6c, 0xc1, 0xa4, 0xed,
0x25, 0x2c, 0x7b, 0x5b, 0x89, 0xe0, 0x8a, 0xe3, 0xa6, 0xcf, 0xb8, 0x25, 0x98, 0x34, 0xec, 0xab,
0xd5, 0x31, 0x55, 0x5a, 0x19, 0x53, 0x95, 0x2b, 0x8d, 0xbf, 0xa4, 0xcb, 0xb6, 0x34, 0x4f, 0x96,
0xad, 0x72, 0x91, 0xf9, 0x05, 0x60, 0x34, 0x3e, 0x20, 0xf4, 0xfb, 0x8c, 0x4a, 0x85, 0x1f, 0x41,
0x43, 0x3b, 0x45, 0x17, 0xf5, 0x50, 0xbf, 0x45, 0x8a, 0x1d, 0x5e, 0x87, 0x46, 0x2a, 0xc2, 0xaf,
0x2c, 0xe8, 0x2e, 0xf5, 0x50, 0xff, 0x0e, 0x59, 0x4e, 0x45, 0xe8, 0x06, 0xf8, 0x29, 0xd4, 0x93,
0xf0, 0xa4, 0x5b, 0xef, 0xa1, 0x7e, 0xdb, 0x59, 0xb5, 0x32, 0xf2, 0x0c, 0x67, 0x2c, 0x68, 0xc8,
0x4e, 0x48, 0xe6, 0x33, 0x5f, 0x43, 0x5b, 0xc7, 0x97, 0x09, 0x8f, 0x25, 0xc5, 0xfd, 0x22, 0x81,
0xec, 0xa2, 0x5e, 0xbd, 0xdf, 0x76, 0x3a, 0x5a, 0x94, 0x03, 0x91, 0xec, 0x59, 0xa4, 0x94, 0x19,
0xd8, 0x90, 0xaa, 0x5b, 0x05, 0xd3, 0xf1, 0xaf, 0x0d, 0x16, 0x40, 0x67, 0x48, 0xd5, 0x88, 0xc7,
0x53, 0x2a, 0x6e, 0x0f, 0xef, 0x3d, 0xac, 0x55, 0xb2, 0x5c, 0x1b, 0xf2, 0x27, 0x82, 0xb5, 0x8f,
0xbe, 0xa4, 0x22, 0xa5, 0xc4, 0x1d, 0xdc, 0x10, 0xf3, 0x1d, 0x34, 0xbd, 0x90, 0x49, 0x2f, 0x64,
0x1a, 0x75, 0xc5, 0x31, 0xad, 0xa2, 0x39, 0xad, 0x73, 0xb1, 0xad, 0xdd, 0x7d, 0xf7, 0x70, 0x77,
0xdf, 0x25, 0x67, 0x12, 0x73, 0x13, 0x9a, 0x85, 0x0d, 0xaf, 0x42, 0xdb, 0x1d, 0xa7, 0xaf, 0x8e,
0x62, 0x36, 0xf1, 0xa4, 0xea, 0xd4, 0x0a, 0xc3, 0xce, 0x99, 0x01, 0x99, 0x9f, 0xa0, 0x45, 0xdc,
0xc1, 0x51, 0x12, 0x78, 0x8a, 0xe2, 0x67, 0x70, 0xdf, 0x0b, 0x52, 0x2a, 0x14, 0x93, 0x34, 0xa2,
0xb1, 0xd2, 0xb4, 0x77, 0xc9, 0xa2, 0x11, 0x3f, 0x87, 0x65, 0x8d, 0xaf, 0x99, 0x2f, 0xaa, 0x45,
0xee, 0x36, 0x7f, 0x20, 0x58, 0xd9, 0x9b, 0x45, 0xc9, 0xcd, 0xeb, 0xf0, 0xe6, 0xcf, 0x3a, 0x3c,
0x29, 0xeb, 0xb0, 0x18, 0xf8, 0x3f, 0x8b, 0xb0, 0x03, 0xf7, 0xca, 0x78, 0xc9, 0xf1, 0xe9, 0xfc,
0x84, 0xe8, 0xca, 0x13, 0x3a, 0xbf, 0x96, 0x60, 0x83, 0xe4, 0xc3, 0xee, 0xc6, 0x21, 0x17, 0x91,
0xa7, 0x18, 0x8f, 0x0f, 0xa9, 0x48, 0xd9, 0x84, 0x62, 0x07, 0xea, 0xa3, 0xf1, 0x01, 0x7e, 0x50,
0x32, 0xcf, 0xe7, 0xdd, 0x78, 0xb8, 0x68, 0xcc, 0xdb, 0xcc, 0xac, 0x65, 0x9a, 0x21, 0x55, 0x15,
0xcd, 0x7c, 0x14, 0x2b, 0x9a, 0xca, 0xfc, 0x98, 0x35, 0xbc, 0x07, 0xad, 0xb2, 0x63, 0xf1, 0x46,
0xf5, 0xa3, 0x85, 0x59, 0x31, 0x8c, 0x8b, 0x5c, 0x65, 0x94, 0x0f, 0x00, 0xf3, 0xde, 0xc2, 0xc6,
0xe5, 0x0d, 0x67, 0xe0, 0xd2, 0x57, 0x76, 0xce, 0x16, 0xc2, 0x6f, 0xa1, 0x59, 0xd4, 0x10, 0x3f,
0xbe, 0xe4, 0x2f, 0x19, 0xeb, 0xe7, 0x1d, 0xc9, 0xf1, 0xe9, 0x16, 0x1a, 0x6c, 0x7e, 0x7e, 0xf1,
0xcf, 0x57, 0xb6, 0xdf, 0xd0, 0x17, 0xe8, 0xf6, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x59, 0x4d,
0xc3, 0x86, 0xe6, 0x05, 0x00, 0x00,
var File_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto protoreflect.FileDescriptor
var file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDesc = []byte{
0x0a, 0x33, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x69, 0x6f,
0x2d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x2f, 0x62, 0x69, 0x6f, 0x2d, 0x72, 0x64, 0x2f,
0x63, 0x6d, 0x64, 0x2f, 0x72, 0x69, 0x73, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x69, 0x73, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x1a, 0x2f,
0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x69, 0x6f, 0x2d, 0x72,
0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x2f, 0x62, 0x69, 0x6f, 0x2d, 0x72, 0x64, 0x2f, 0x6e, 0x65,
0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6e, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
0x33, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x69, 0x6f, 0x2d,
0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x2f, 0x62, 0x69, 0x6f, 0x2d, 0x72, 0x64, 0x2f, 0x72,
0x6f, 0x75, 0x74, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5e, 0x0a, 0x0a, 0x4c, 0x50, 0x4d, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72,
0x66, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49,
0x64, 0x12, 0x21, 0x0a, 0x03, 0x70, 0x66, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x6e, 0x65, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52,
0x03, 0x70, 0x66, 0x78, 0x22, 0x37, 0x0a, 0x0b, 0x4c, 0x50, 0x4d, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e,
0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x22, 0x5e, 0x0a,
0x0a, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72,
0x6f, 0x75, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x75,
0x74, 0x65, 0x72, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x03, 0x70, 0x66,
0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x6e, 0x65,
0x74, 0x2e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x03, 0x70, 0x66, 0x78, 0x22, 0x37, 0x0a,
0x0b, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x06,
0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x62,
0x69, 0x6f, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x06,
0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x22, 0x64, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6e,
0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f,
0x75, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74,
0x65, 0x72, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
0x28, 0x04, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x03, 0x70, 0x66, 0x78,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x6e, 0x65, 0x74,
0x2e, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x03, 0x70, 0x66, 0x78, 0x22, 0x3d, 0x0a, 0x11,
0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x12, 0x28, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x10, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x6f,
0x75, 0x74, 0x65, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x22, 0xad, 0x01, 0x0a, 0x11,
0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x52, 0x49, 0x42, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66,
0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64,
0x12, 0x3c, 0x0a, 0x07, 0x61, 0x66, 0x69, 0x73, 0x61, 0x66, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28,
0x0e, 0x32, 0x22, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e, 0x4f, 0x62, 0x73, 0x65,
0x72, 0x76, 0x65, 0x52, 0x49, 0x42, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x46,
0x49, 0x53, 0x41, 0x46, 0x49, 0x52, 0x07, 0x61, 0x66, 0x69, 0x73, 0x61, 0x66, 0x69, 0x22, 0x2b,
0x0a, 0x07, 0x41, 0x46, 0x49, 0x53, 0x41, 0x46, 0x49, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x50, 0x76,
0x34, 0x55, 0x6e, 0x69, 0x63, 0x61, 0x73, 0x74, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x50,
0x76, 0x36, 0x55, 0x6e, 0x69, 0x63, 0x61, 0x73, 0x74, 0x10, 0x01, 0x22, 0x59, 0x0a, 0x09, 0x52,
0x49, 0x42, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x64, 0x76, 0x65,
0x72, 0x74, 0x69, 0x73, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
0x0d, 0x61, 0x64, 0x76, 0x65, 0x72, 0x74, 0x69, 0x73, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x26,
0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e,
0x62, 0x69, 0x6f, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52,
0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x22, 0xa7, 0x01, 0x0a, 0x0e, 0x44, 0x75, 0x6d, 0x70, 0x52,
0x49, 0x42, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x75,
0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65,
0x72, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x04, 0x52, 0x05, 0x76, 0x72, 0x66, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x07, 0x61, 0x66, 0x69, 0x73,
0x61, 0x66, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x62, 0x69, 0x6f, 0x2e,
0x72, 0x69, 0x73, 0x2e, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x49, 0x42, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x2e, 0x41, 0x46, 0x49, 0x53, 0x41, 0x46, 0x49, 0x52, 0x07, 0x61, 0x66, 0x69, 0x73,
0x61, 0x66, 0x69, 0x22, 0x2b, 0x0a, 0x07, 0x41, 0x46, 0x49, 0x53, 0x41, 0x46, 0x49, 0x12, 0x0f,
0x0a, 0x0b, 0x49, 0x50, 0x76, 0x34, 0x55, 0x6e, 0x69, 0x63, 0x61, 0x73, 0x74, 0x10, 0x00, 0x12,
0x0f, 0x0a, 0x0b, 0x49, 0x50, 0x76, 0x36, 0x55, 0x6e, 0x69, 0x63, 0x61, 0x73, 0x74, 0x10, 0x01,
0x22, 0x36, 0x0a, 0x0c, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x49, 0x42, 0x52, 0x65, 0x70, 0x6c, 0x79,
0x12, 0x26, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x10, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x6f, 0x75, 0x74,
0x65, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x22, 0x13, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x52,
0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x39, 0x0a,
0x06, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65,
0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x12,
0x17, 0x0a, 0x07, 0x76, 0x72, 0x66, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x04,
0x52, 0x06, 0x76, 0x72, 0x66, 0x49, 0x64, 0x73, 0x22, 0x3f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x52,
0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29,
0x0a, 0x07, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x0f, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72,
0x52, 0x07, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x32, 0x8f, 0x03, 0x0a, 0x19, 0x52, 0x6f,
0x75, 0x74, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x03, 0x4c, 0x50, 0x4d, 0x12, 0x13,
0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e, 0x4c, 0x50, 0x4d, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e, 0x4c, 0x50,
0x4d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x32, 0x0a, 0x03, 0x47,
0x65, 0x74, 0x12, 0x13, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e, 0x47, 0x65, 0x74,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69,
0x73, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x12, 0x1a, 0x2e,
0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65,
0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x62, 0x69, 0x6f, 0x2e,
0x72, 0x69, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x4c,
0x6f, 0x6e, 0x67, 0x65, 0x72, 0x12, 0x19, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e,
0x47, 0x65, 0x74, 0x4c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x1a, 0x1a, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x6f,
0x6e, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3e,
0x0a, 0x0a, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x52, 0x49, 0x42, 0x12, 0x1a, 0x2e, 0x62,
0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x52, 0x49,
0x42, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72,
0x69, 0x73, 0x2e, 0x52, 0x49, 0x42, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x30, 0x01, 0x12, 0x3b,
0x0a, 0x07, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x49, 0x42, 0x12, 0x17, 0x2e, 0x62, 0x69, 0x6f, 0x2e,
0x72, 0x69, 0x73, 0x2e, 0x44, 0x75, 0x6d, 0x70, 0x52, 0x49, 0x42, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x15, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x72, 0x69, 0x73, 0x2e, 0x44, 0x75, 0x6d,
0x70, 0x52, 0x49, 0x42, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x30, 0x01, 0x42, 0x2b, 0x5a, 0x29, 0x67,
0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x69, 0x6f, 0x2d, 0x72, 0x6f,
0x75, 0x74, 0x69, 0x6e, 0x67, 0x2f, 0x62, 0x69, 0x6f, 0x2d, 0x72, 0x64, 0x2f, 0x63, 0x6d, 0x64,
0x2f, 0x72, 0x69, 0x73, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescOnce sync.Once
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescData = file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDesc
)
func file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescGZIP() []byte {
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescOnce.Do(func() {
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescData)
})
return file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDescData
}
var file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
var file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_goTypes = []interface{}{
(ObserveRIBRequest_AFISAFI)(0), // 0: bio.ris.ObserveRIBRequest.AFISAFI
(DumpRIBRequest_AFISAFI)(0), // 1: bio.ris.DumpRIBRequest.AFISAFI
(*LPMRequest)(nil), // 2: bio.ris.LPMRequest
(*LPMResponse)(nil), // 3: bio.ris.LPMResponse
(*GetRequest)(nil), // 4: bio.ris.GetRequest
(*GetResponse)(nil), // 5: bio.ris.GetResponse
(*GetLongerRequest)(nil), // 6: bio.ris.GetLongerRequest
(*GetLongerResponse)(nil), // 7: bio.ris.GetLongerResponse
(*ObserveRIBRequest)(nil), // 8: bio.ris.ObserveRIBRequest
(*RIBUpdate)(nil), // 9: bio.ris.RIBUpdate
(*DumpRIBRequest)(nil), // 10: bio.ris.DumpRIBRequest
(*DumpRIBReply)(nil), // 11: bio.ris.DumpRIBReply
(*GetRoutersRequest)(nil), // 12: bio.ris.GetRoutersRequest
(*Router)(nil), // 13: bio.ris.Router
(*GetRoutersResponse)(nil), // 14: bio.ris.GetRoutersResponse
(*api.Prefix)(nil), // 15: bio.net.Prefix
(*api1.Route)(nil), // 16: bio.route.Route
}
var file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_depIdxs = []int32{
15, // 0: bio.ris.LPMRequest.pfx:type_name -> bio.net.Prefix
16, // 1: bio.ris.LPMResponse.routes:type_name -> bio.route.Route
15, // 2: bio.ris.GetRequest.pfx:type_name -> bio.net.Prefix
16, // 3: bio.ris.GetResponse.routes:type_name -> bio.route.Route
15, // 4: bio.ris.GetLongerRequest.pfx:type_name -> bio.net.Prefix
16, // 5: bio.ris.GetLongerResponse.routes:type_name -> bio.route.Route
0, // 6: bio.ris.ObserveRIBRequest.afisafi:type_name -> bio.ris.ObserveRIBRequest.AFISAFI
16, // 7: bio.ris.RIBUpdate.route:type_name -> bio.route.Route
1, // 8: bio.ris.DumpRIBRequest.afisafi:type_name -> bio.ris.DumpRIBRequest.AFISAFI
16, // 9: bio.ris.DumpRIBReply.route:type_name -> bio.route.Route
13, // 10: bio.ris.GetRoutersResponse.routers:type_name -> bio.ris.Router
2, // 11: bio.ris.RoutingInformationService.LPM:input_type -> bio.ris.LPMRequest
4, // 12: bio.ris.RoutingInformationService.Get:input_type -> bio.ris.GetRequest
12, // 13: bio.ris.RoutingInformationService.GetRouters:input_type -> bio.ris.GetRoutersRequest
6, // 14: bio.ris.RoutingInformationService.GetLonger:input_type -> bio.ris.GetLongerRequest
8, // 15: bio.ris.RoutingInformationService.ObserveRIB:input_type -> bio.ris.ObserveRIBRequest
10, // 16: bio.ris.RoutingInformationService.DumpRIB:input_type -> bio.ris.DumpRIBRequest
3, // 17: bio.ris.RoutingInformationService.LPM:output_type -> bio.ris.LPMResponse
5, // 18: bio.ris.RoutingInformationService.Get:output_type -> bio.ris.GetResponse
14, // 19: bio.ris.RoutingInformationService.GetRouters:output_type -> bio.ris.GetRoutersResponse
7, // 20: bio.ris.RoutingInformationService.GetLonger:output_type -> bio.ris.GetLongerResponse
9, // 21: bio.ris.RoutingInformationService.ObserveRIB:output_type -> bio.ris.RIBUpdate
11, // 22: bio.ris.RoutingInformationService.DumpRIB:output_type -> bio.ris.DumpRIBReply
17, // [17:23] is the sub-list for method output_type
11, // [11:17] is the sub-list for method input_type
11, // [11:11] is the sub-list for extension type_name
11, // [11:11] is the sub-list for extension extendee
0, // [0:11] is the sub-list for field type_name
}
func init() { file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_init() }
func file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_init() {
if File_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LPMRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LPMResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetLongerRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetLongerResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ObserveRIBRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RIBUpdate); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DumpRIBRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DumpRIBReply); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetRoutersRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Router); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetRoutersResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDesc,
NumEnums: 2,
NumMessages: 13,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_goTypes,
DependencyIndexes: file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_depIdxs,
EnumInfos: file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_enumTypes,
MessageInfos: file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_msgTypes,
}.Build()
File_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto = out.File
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_rawDesc = nil
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_goTypes = nil
file_github_com_bio_routing_bio_rd_cmd_ris_api_ris_proto_depIdxs = nil
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn
var _ grpc.ClientConnInterface
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4
const _ = grpc.SupportPackageIsVersion6
// RoutingInformationServiceClient is the client API for RoutingInformationService service.
//
......@@ -623,16 +1196,17 @@ const _ = grpc.SupportPackageIsVersion4
type RoutingInformationServiceClient interface {
LPM(ctx context.Context, in *LPMRequest, opts ...grpc.CallOption) (*LPMResponse, error)
Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error)
GetRouters(ctx context.Context, in *GetRoutersRequest, opts ...grpc.CallOption) (*GetRoutersResponse, error)
GetLonger(ctx context.Context, in *GetLongerRequest, opts ...grpc.CallOption) (*GetLongerResponse, error)
ObserveRIB(ctx context.Context, in *ObserveRIBRequest, opts ...grpc.CallOption) (RoutingInformationService_ObserveRIBClient, error)
DumpRIB(ctx context.Context, in *DumpRIBRequest, opts ...grpc.CallOption) (RoutingInformationService_DumpRIBClient, error)
}
type routingInformationServiceClient struct {
cc *grpc.ClientConn
cc grpc.ClientConnInterface
}
func NewRoutingInformationServiceClient(cc *grpc.ClientConn) RoutingInformationServiceClient {
func NewRoutingInformationServiceClient(cc grpc.ClientConnInterface) RoutingInformationServiceClient {
return &routingInformationServiceClient{cc}
}
......@@ -654,6 +1228,15 @@ func (c *routingInformationServiceClient) Get(ctx context.Context, in *GetReques
return out, nil
}
func (c *routingInformationServiceClient) GetRouters(ctx context.Context, in *GetRoutersRequest, opts ...grpc.CallOption) (*GetRoutersResponse, error) {
out := new(GetRoutersResponse)
err := c.cc.Invoke(ctx, "/bio.ris.RoutingInformationService/GetRouters", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *routingInformationServiceClient) GetLonger(ctx context.Context, in *GetLongerRequest, opts ...grpc.CallOption) (*GetLongerResponse, error) {
out := new(GetLongerResponse)
err := c.cc.Invoke(ctx, "/bio.ris.RoutingInformationService/GetLonger", in, out, opts...)
......@@ -731,11 +1314,35 @@ func (x *routingInformationServiceDumpRIBClient) Recv() (*DumpRIBReply, error) {
type RoutingInformationServiceServer interface {
LPM(context.Context, *LPMRequest) (*LPMResponse, error)
Get(context.Context, *GetRequest) (*GetResponse, error)
GetRouters(context.Context, *GetRoutersRequest) (*GetRoutersResponse, error)
GetLonger(context.Context, *GetLongerRequest) (*GetLongerResponse, error)
ObserveRIB(*ObserveRIBRequest, RoutingInformationService_ObserveRIBServer) error
DumpRIB(*DumpRIBRequest, RoutingInformationService_DumpRIBServer) error
}
// UnimplementedRoutingInformationServiceServer can be embedded to have forward compatible implementations.
type UnimplementedRoutingInformationServiceServer struct {
}
func (*UnimplementedRoutingInformationServiceServer) LPM(context.Context, *LPMRequest) (*LPMResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method LPM not implemented")
}
func (*UnimplementedRoutingInformationServiceServer) Get(context.Context, *GetRequest) (*GetResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method Get not implemented")
}
func (*UnimplementedRoutingInformationServiceServer) GetRouters(context.Context, *GetRoutersRequest) (*GetRoutersResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetRouters not implemented")
}
func (*UnimplementedRoutingInformationServiceServer) GetLonger(context.Context, *GetLongerRequest) (*GetLongerResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetLonger not implemented")
}
func (*UnimplementedRoutingInformationServiceServer) ObserveRIB(*ObserveRIBRequest, RoutingInformationService_ObserveRIBServer) error {
return status.Errorf(codes.Unimplemented, "method ObserveRIB not implemented")
}
func (*UnimplementedRoutingInformationServiceServer) DumpRIB(*DumpRIBRequest, RoutingInformationService_DumpRIBServer) error {
return status.Errorf(codes.Unimplemented, "method DumpRIB not implemented")
}
func RegisterRoutingInformationServiceServer(s *grpc.Server, srv RoutingInformationServiceServer) {
s.RegisterService(&_RoutingInformationService_serviceDesc, srv)
}
......@@ -776,6 +1383,24 @@ func _RoutingInformationService_Get_Handler(srv interface{}, ctx context.Context
return interceptor(ctx, in, info, handler)
}
func _RoutingInformationService_GetRouters_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetRoutersRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(RoutingInformationServiceServer).GetRouters(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/bio.ris.RoutingInformationService/GetRouters",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(RoutingInformationServiceServer).GetRouters(ctx, req.(*GetRoutersRequest))
}
return interceptor(ctx, in, info, handler)
}
func _RoutingInformationService_GetLonger_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetLongerRequest)
if err := dec(in); err != nil {
......@@ -848,6 +1473,10 @@ var _RoutingInformationService_serviceDesc = grpc.ServiceDesc{
MethodName: "Get",
Handler: _RoutingInformationService_Get_Handler,
},
{
MethodName: "GetRouters",
Handler: _RoutingInformationService_GetRouters_Handler,
},
{
MethodName: "GetLonger",
Handler: _RoutingInformationService_GetLonger_Handler,
......
......@@ -7,9 +7,10 @@ import "github.com/bio-routing/bio-rd/route/api/route.proto";
option go_package = "github.com/bio-routing/bio-rd/cmd/ris/api";
service RoutingInformationService {
rpc LPM(LPMRequest) returns (LPMResponse) {}
rpc Get(GetRequest) returns (GetResponse) {}
rpc GetLonger(GetLongerRequest) returns (GetLongerResponse) {}
rpc LPM(LPMRequest) returns (LPMResponse) {};
rpc Get(GetRequest) returns (GetResponse) {};
rpc GetRouters(GetRoutersRequest) returns (GetRoutersResponse) {};
rpc GetLonger(GetLongerRequest) returns (GetLongerResponse) {};
rpc ObserveRIB(ObserveRIBRequest) returns (stream RIBUpdate);
rpc DumpRIB(DumpRIBRequest) returns (stream DumpRIBReply);
}
......@@ -72,4 +73,18 @@ message DumpRIBRequest {
message DumpRIBReply {
bio.route.Route route = 1;
}
\ No newline at end of file
}
message GetRoutersRequest {
}
message Router {
string router = 1;
repeated uint64 vrf_ids = 2;
}
message GetRoutersResponse {
repeated Router routers = 1;
}
......@@ -225,6 +225,24 @@ func (s *Server) DumpRIB(req *pb.DumpRIBRequest, stream pb.RoutingInformationSer
return nil
}
// GetRouters implements the GetRouters RPC
func (s *Server) GetRouters(c context.Context, request *pb.GetRoutersRequest) (*pb.GetRoutersResponse, error) {
resp := &pb.GetRoutersResponse{}
routers := s.bmp.GetRouters()
for _, r := range routers {
vrfs := r.GetVRFs()
vrfIDs := make([]uint64, 0, len(vrfs))
for _, vrf := range vrfs {
vrfIDs = append(vrfIDs, vrf.RD())
}
resp.Routers = append(resp.Routers, &pb.Router{
Router: r.Name(),
VrfIds: vrfIDs,
})
}
return resp, nil
}
type update struct {
advertisement bool
prefix net.Prefix
......
......@@ -4,8 +4,7 @@ require (
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect
github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4 // indirect
github.com/bio-routing/tflow2 v0.0.0-20181230153523-2e308a4a3c3a
github.com/golang/protobuf v1.3.1
github.com/google/btree v1.0.0
github.com/golang/protobuf v1.4.0
github.com/grpc-ecosystem/go-grpc-middleware v1.0.0
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0
github.com/pkg/errors v0.8.0
......@@ -16,9 +15,12 @@ require (
github.com/urfave/cli v1.21.0
github.com/vishvananda/netlink v1.0.0
github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc // indirect
golang.org/x/net v0.0.0-20190613194153-d28f0bde5980
google.golang.org/genproto v0.0.0-20181221175505-bd9b4fb69e2f // indirect
google.golang.org/grpc v1.17.0
golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e // indirect
golang.org/x/sys v0.0.0-20200413165638-669c56c373c4 // indirect
golang.org/x/text v0.3.2 // indirect
google.golang.org/genproto v0.0.0-20200413115906-b5235f65be36 // indirect
google.golang.org/grpc v1.28.0
google.golang.org/protobuf v1.21.0
gopkg.in/yaml.v2 v2.2.2
)
......
......@@ -11,34 +11,49 @@ github.com/beorn7/perks v1.0.0 h1:HWo1m869IqiPhD389kmkxeTalrjNbbJTC8LXupb+sl0=
github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=
github.com/bio-routing/tflow2 v0.0.0-20181230153523-2e308a4a3c3a h1:CsHtkAummoG7yhc9+6NRBkoPcTzSSmTfiyzWx5NwFPw=
github.com/bio-routing/tflow2 v0.0.0-20181230153523-2e308a4a3c3a/go.mod h1:tjzJ5IykdbWNs1FjmiJWsH6SRBl+aWgxO5I44DAegIw=
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
github.com/gogo/protobuf v1.1.1 h1:72R+M5VuhED/KujmZVcIquuo8mBgX4oVda//DQb3PXo=
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58=
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
github.com/golang/lint v0.0.0-20180702182130-06c8688daad7/go.mod h1:tluoj9z5200jBnyusfRPU2LqT6J+DAorxEvtC7LHB+E=
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
github.com/golang/protobuf v1.2.0 h1:P3YflyNX/ehuJFLhxviNdFxQPkGK5cDcApsge1SqnvM=
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.2.1-0.20181128192352-1d3f30b51784 h1:s1jVWjw0DeCSJbhHr5l/8YYt5MAX97iTEOe8Kjp/LS4=
github.com/golang/protobuf v1.2.1-0.20181128192352-1d3f30b51784/go.mod h1:Qd/q+1AKNOZr9uGQzbzCmRO6sUih6GTPZv6a1/R87v0=
github.com/golang/protobuf v1.3.1 h1:YF8+flBXS5eO826T4nzqPrxfhQThhXl0YzfuUPu4SBg=
github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/google/btree v1.0.0 h1:0udJVsspx3VBr5FwtLhQQtuAsVc79tTq0ocGIPAU6qo=
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw=
github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=
github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA=
github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs=
github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0 h1:aRz0NBceriICVtjhCgKkDvl+RudKu1CT6h0ZvUTrNfE=
github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w=
github.com/golang/protobuf v1.4.0 h1:oOuy+ugB+P/kBdUnG5QaMXSIyJ1q38wWSojYCb3z5VQ=
github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0=
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.4.0 h1:xsAVV57WRhGj6kEIi8ReJzQlHHqcBYCElAvkovg3B/4=
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/grpc-ecosystem/go-grpc-middleware v1.0.0 h1:Iju5GlWwrvL6UBg4zJJt3btmonfrMlCDdsejg4CZE7c=
github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho=
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk=
github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w=
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/konsorten/go-windows-terminal-sequences v1.0.1 h1:mweAR1A6xJ3oS2pRaGiHgQ4OO8tzTaLawm8vnODuwDk=
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
......@@ -54,10 +69,11 @@ github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZN
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
github.com/prometheus/client_golang v1.0.0 h1:vrDKnkGzuGvhNAL56c7DBz29ZL+KxnoR0x7enabFceM=
github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=
github.com/prometheus/client_golang v1.3.0 h1:miYCvYqFXtl/J9FIy8eNpBfYthAEFg+Ys0XyUVEcDsc=
github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=
github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90 h1:S/YWwWx/RA8rT8tKFRuGUZhuA90OyIBpPCXkcbwU8DE=
github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4 h1:gQz4mCbXsO+nc9n1hCxHcGA3Zx3Eo+UHZoInFGUIXNM=
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=
github.com/prometheus/common v0.6.0 h1:kRhiuYSXR3+uv2IbVbZhUxK5zVD/2pp3Gd2PpvPkpEo=
github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc=
......@@ -82,47 +98,73 @@ github.com/vishvananda/netlink v1.0.0/go.mod h1:+SR5DhBJrl6ZM7CoCKvpw5BKroDKQ+PJ
github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc h1:R83G5ikgLMxrBvLh22JhdfI8K6YXEPHx5P03Uu3DRs4=
github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc/go.mod h1:ZjcWmFBXmLKZu9Nxj3WKYEafiSqer2rnvPr0en9UNpI=
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9 h1:mKdxBk7AujPs8kU4m80U72y/zjbZ3UcXC7dClwKbUI0=
golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2 h1:VklqNMn3ovrHsnt90PveolxSbWFaJdECFbxSq0Mqo2M=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/lint v0.0.0-20180702182130-06c8688daad7/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181106065722-10aee1819953/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20181220203305-927f97764cc3 h1:eH6Eip3UpmR+yM/qI9Ijluzb1bNv/cAU/n+6l8tRSis=
golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190613194153-d28f0bde5980 h1:dfGZHvZk057jK2MCeWus/TowKpJ8y4AmooUzdBSR9GU=
golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e h1:3G+cUijn7XD+S4eJFddp53Pv7+slrESplyjG25HgL+k=
golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4 h1:YUO/7uOKsKeq9UokNS62b8FYywz3ker1l1vDZRCRefw=
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20181228120256-c6cbdbf9e68a h1:m967IZNyxBbyjxjaN+Af9EjsI8iXAuWjfyP6HXXIdwc=
golang.org/x/sys v0.0.0-20181228120256-c6cbdbf9e68a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a h1:1BGLXjeY4akVXGgbC9HugT3Jv3hCI0z56oJR5vAMgBU=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200413165638-669c56c373c4 h1:opSr2sbRXk5X5/givKrrKj9HXxFpW2sdCiP8MJSKLQY=
golang.org/x/sys v0.0.0-20200413165638-669c56c373c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs=
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8 h1:Nw54tB0rB7hY/N0NQvRW8DG4Yk3Q6T9cu9RcFQDu1tc=
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
google.golang.org/genproto v0.0.0-20180831171423-11092d34479b/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
google.golang.org/genproto v0.0.0-20181221175505-bd9b4fb69e2f h1:eT3B0O2ghdSPzjAOznr3oOLyN1HFeYUncYl7FRwg4VI=
google.golang.org/genproto v0.0.0-20181221175505-bd9b4fb69e2f/go.mod h1:7Ep/1NZk928CDR8SjdVbjWNpdIf6nzjE3BTgJDr2Atg=
google.golang.org/grpc v1.16.0/go.mod h1:0JHn/cJsOMiMfNA9+DeHDlAU7KAAB5GDlYFpa9MZMio=
google.golang.org/grpc v1.17.0 h1:TRJYBgMclJvGYn2rIMjj+h9KtMt5r1Ij7ODVRIZkwhk=
google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs=
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 h1:gSJIx1SDwno+2ElGhA4+qG2zF97qiUzTM+rQ0klBOcE=
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
google.golang.org/genproto v0.0.0-20200413115906-b5235f65be36 h1:j7CmVRD4Kec0+f8VuBAc2Ak2MFfXm5Q2/RxuJLL+76E=
google.golang.org/genproto v0.0.0-20200413115906-b5235f65be36/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY=
google.golang.org/grpc v1.27.0 h1:rRYRFMVgRv6E0D70Skyfsr28tDXIuuPZyWGMPdMcnXg=
google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
google.golang.org/grpc v1.28.0 h1:bO/TA4OxCOummhSf10siHuG7vJOiwh7SpRpFZDkOgl4=
google.golang.org/grpc v1.28.0/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60=
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=
google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE=
google.golang.org/protobuf v1.21.0 h1:qdOKuR/EIArgaWNjetjgTzgVTAZ+S/WXVrq9HW9zimw=
google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=
gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc=
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.21.0
// protoc v3.11.4
// source: github.com/bio-routing/bio-rd/net/api/net.proto
package api
import (
fmt "fmt"
proto "github.com/golang/protobuf/proto"
math "math"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// 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
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
type IP_Version int32
......@@ -27,151 +32,265 @@ const (
IP_IPv6 IP_Version = 1
)
var IP_Version_name = map[int32]string{
0: "IPv4",
1: "IPv6",
}
// Enum value maps for IP_Version.
var (
IP_Version_name = map[int32]string{
0: "IPv4",
1: "IPv6",
}
IP_Version_value = map[string]int32{
"IPv4": 0,
"IPv6": 1,
}
)
var IP_Version_value = map[string]int32{
"IPv4": 0,
"IPv6": 1,
func (x IP_Version) Enum() *IP_Version {
p := new(IP_Version)
*p = x
return p
}
func (x IP_Version) String() string {
return proto.EnumName(IP_Version_name, int32(x))
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (IP_Version) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_e879b68d7a71dcc0, []int{1, 0}
func (IP_Version) Descriptor() protoreflect.EnumDescriptor {
return file_github_com_bio_routing_bio_rd_net_api_net_proto_enumTypes[0].Descriptor()
}
type Prefix struct {
Address *IP `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
Pfxlen uint32 `protobuf:"varint,2,opt,name=pfxlen,proto3" json:"pfxlen,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
func (IP_Version) Type() protoreflect.EnumType {
return &file_github_com_bio_routing_bio_rd_net_api_net_proto_enumTypes[0]
}
func (m *Prefix) Reset() { *m = Prefix{} }
func (m *Prefix) String() string { return proto.CompactTextString(m) }
func (*Prefix) ProtoMessage() {}
func (*Prefix) Descriptor() ([]byte, []int) {
return fileDescriptor_e879b68d7a71dcc0, []int{0}
func (x IP_Version) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
func (m *Prefix) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Prefix.Unmarshal(m, b)
// Deprecated: Use IP_Version.Descriptor instead.
func (IP_Version) EnumDescriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescGZIP(), []int{1, 0}
}
func (m *Prefix) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Prefix.Marshal(b, m, deterministic)
type Prefix struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Address *IP `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
Pfxlen uint32 `protobuf:"varint,2,opt,name=pfxlen,proto3" json:"pfxlen,omitempty"`
}
func (m *Prefix) XXX_Merge(src proto.Message) {
xxx_messageInfo_Prefix.Merge(m, src)
func (x *Prefix) Reset() {
*x = Prefix{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_net_api_net_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *Prefix) XXX_Size() int {
return xxx_messageInfo_Prefix.Size(m)
func (x *Prefix) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *Prefix) XXX_DiscardUnknown() {
xxx_messageInfo_Prefix.DiscardUnknown(m)
func (*Prefix) ProtoMessage() {}
func (x *Prefix) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_net_api_net_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_Prefix proto.InternalMessageInfo
// Deprecated: Use Prefix.ProtoReflect.Descriptor instead.
func (*Prefix) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescGZIP(), []int{0}
}
func (m *Prefix) GetAddress() *IP {
if m != nil {
return m.Address
func (x *Prefix) GetAddress() *IP {
if x != nil {
return x.Address
}
return nil
}
func (m *Prefix) GetPfxlen() uint32 {
if m != nil {
return m.Pfxlen
func (x *Prefix) GetPfxlen() uint32 {
if x != nil {
return x.Pfxlen
}
return 0
}
type IP struct {
Higher uint64 `protobuf:"varint,1,opt,name=higher,proto3" json:"higher,omitempty"`
Lower uint64 `protobuf:"varint,2,opt,name=lower,proto3" json:"lower,omitempty"`
Version IP_Version `protobuf:"varint,3,opt,name=version,proto3,enum=bio.net.IP_Version" json:"version,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
func (m *IP) Reset() { *m = IP{} }
func (m *IP) String() string { return proto.CompactTextString(m) }
func (*IP) ProtoMessage() {}
func (*IP) Descriptor() ([]byte, []int) {
return fileDescriptor_e879b68d7a71dcc0, []int{1}
Higher uint64 `protobuf:"varint,1,opt,name=higher,proto3" json:"higher,omitempty"`
Lower uint64 `protobuf:"varint,2,opt,name=lower,proto3" json:"lower,omitempty"`
Version IP_Version `protobuf:"varint,3,opt,name=version,proto3,enum=bio.net.IP_Version" json:"version,omitempty"`
}
func (m *IP) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_IP.Unmarshal(m, b)
}
func (m *IP) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_IP.Marshal(b, m, deterministic)
}
func (m *IP) XXX_Merge(src proto.Message) {
xxx_messageInfo_IP.Merge(m, src)
func (x *IP) Reset() {
*x = IP{}
if protoimpl.UnsafeEnabled {
mi := &file_github_com_bio_routing_bio_rd_net_api_net_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (m *IP) XXX_Size() int {
return xxx_messageInfo_IP.Size(m)
func (x *IP) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (m *IP) XXX_DiscardUnknown() {
xxx_messageInfo_IP.DiscardUnknown(m)
func (*IP) ProtoMessage() {}
func (x *IP) ProtoReflect() protoreflect.Message {
mi := &file_github_com_bio_routing_bio_rd_net_api_net_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
var xxx_messageInfo_IP proto.InternalMessageInfo
// Deprecated: Use IP.ProtoReflect.Descriptor instead.
func (*IP) Descriptor() ([]byte, []int) {
return file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescGZIP(), []int{1}
}
func (m *IP) GetHigher() uint64 {
if m != nil {
return m.Higher
func (x *IP) GetHigher() uint64 {
if x != nil {
return x.Higher
}
return 0
}
func (m *IP) GetLower() uint64 {
if m != nil {
return m.Lower
func (x *IP) GetLower() uint64 {
if x != nil {
return x.Lower
}
return 0
}
func (m *IP) GetVersion() IP_Version {
if m != nil {
return m.Version
func (x *IP) GetVersion() IP_Version {
if x != nil {
return x.Version
}
return IP_IPv4
}
func init() {
proto.RegisterEnum("bio.net.IP_Version", IP_Version_name, IP_Version_value)
proto.RegisterType((*Prefix)(nil), "bio.net.Prefix")
proto.RegisterType((*IP)(nil), "bio.net.IP")
}
func init() {
proto.RegisterFile("github.com/bio-routing/bio-rd/net/api/net.proto", fileDescriptor_e879b68d7a71dcc0)
}
var fileDescriptor_e879b68d7a71dcc0 = []byte{
// 228 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xd2, 0x4f, 0xcf, 0x2c, 0xc9,
0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0x4f, 0xca, 0xcc, 0xd7, 0x2d, 0xca, 0x2f, 0x2d, 0xc9,
0xcc, 0x4b, 0x87, 0xb0, 0x53, 0xf4, 0xf3, 0x52, 0x4b, 0xf4, 0x13, 0x0b, 0x32, 0x41, 0xb4, 0x5e,
0x41, 0x51, 0x7e, 0x49, 0xbe, 0x10, 0x7b, 0x52, 0x66, 0xbe, 0x5e, 0x5e, 0x6a, 0x89, 0x92, 0x3b,
0x17, 0x5b, 0x40, 0x51, 0x6a, 0x5a, 0x66, 0x85, 0x90, 0x2a, 0x17, 0x7b, 0x62, 0x4a, 0x4a, 0x51,
0x6a, 0x71, 0xb1, 0x04, 0xa3, 0x02, 0xa3, 0x06, 0xb7, 0x11, 0xb7, 0x1e, 0x54, 0x91, 0x9e, 0x67,
0x40, 0x10, 0x4c, 0x4e, 0x48, 0x8c, 0x8b, 0xad, 0x20, 0xad, 0x22, 0x27, 0x35, 0x4f, 0x82, 0x49,
0x81, 0x51, 0x83, 0x37, 0x08, 0xca, 0x53, 0x6a, 0x60, 0xe4, 0x62, 0xf2, 0x0c, 0x00, 0x49, 0x67,
0x64, 0xa6, 0x67, 0xa4, 0x16, 0x81, 0x0d, 0x61, 0x09, 0x82, 0xf2, 0x84, 0x44, 0xb8, 0x58, 0x73,
0xf2, 0xcb, 0x53, 0x8b, 0xc0, 0xba, 0x58, 0x82, 0x20, 0x1c, 0x21, 0x5d, 0x2e, 0xf6, 0xb2, 0xd4,
0xa2, 0xe2, 0xcc, 0xfc, 0x3c, 0x09, 0x66, 0x05, 0x46, 0x0d, 0x3e, 0x23, 0x61, 0x24, 0x3b, 0xf5,
0xc2, 0x20, 0x52, 0x41, 0x30, 0x35, 0x4a, 0xb2, 0x5c, 0xec, 0x50, 0x31, 0x21, 0x0e, 0x2e, 0x16,
0xcf, 0x80, 0x32, 0x13, 0x01, 0x06, 0x28, 0xcb, 0x4c, 0x80, 0xd1, 0x49, 0x3d, 0x4a, 0x95, 0xa8,
0x70, 0x48, 0x62, 0x03, 0x07, 0x82, 0x31, 0x20, 0x00, 0x00, 0xff, 0xff, 0xe8, 0xba, 0xb6, 0x37,
0x37, 0x01, 0x00, 0x00,
var File_github_com_bio_routing_bio_rd_net_api_net_proto protoreflect.FileDescriptor
var file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDesc = []byte{
0x0a, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x69, 0x6f,
0x2d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x2f, 0x62, 0x69, 0x6f, 0x2d, 0x72, 0x64, 0x2f,
0x6e, 0x65, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6e, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x07, 0x62, 0x69, 0x6f, 0x2e, 0x6e, 0x65, 0x74, 0x22, 0x47, 0x0a, 0x06, 0x50, 0x72,
0x65, 0x66, 0x69, 0x78, 0x12, 0x25, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x62, 0x69, 0x6f, 0x2e, 0x6e, 0x65, 0x74, 0x2e,
0x49, 0x50, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70,
0x66, 0x78, 0x6c, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x66, 0x78,
0x6c, 0x65, 0x6e, 0x22, 0x80, 0x01, 0x0a, 0x02, 0x49, 0x50, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x69,
0x67, 0x68, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x68, 0x69, 0x67, 0x68,
0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
0x04, 0x52, 0x05, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x2d, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x62, 0x69, 0x6f, 0x2e,
0x6e, 0x65, 0x74, 0x2e, 0x49, 0x50, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x07,
0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x1d, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x50, 0x76, 0x34, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04,
0x49, 0x50, 0x76, 0x36, 0x10, 0x01, 0x42, 0x27, 0x5a, 0x25, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x69, 0x6f, 0x2d, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67,
0x2f, 0x62, 0x69, 0x6f, 0x2d, 0x72, 0x64, 0x2f, 0x6e, 0x65, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescOnce sync.Once
file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescData = file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDesc
)
func file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescGZIP() []byte {
file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescOnce.Do(func() {
file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescData)
})
return file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDescData
}
var file_github_com_bio_routing_bio_rd_net_api_net_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_github_com_bio_routing_bio_rd_net_api_net_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_github_com_bio_routing_bio_rd_net_api_net_proto_goTypes = []interface{}{
(IP_Version)(0), // 0: bio.net.IP.Version
(*Prefix)(nil), // 1: bio.net.Prefix
(*IP)(nil), // 2: bio.net.IP
}
var file_github_com_bio_routing_bio_rd_net_api_net_proto_depIdxs = []int32{
2, // 0: bio.net.Prefix.address:type_name -> bio.net.IP
0, // 1: bio.net.IP.version:type_name -> bio.net.IP.Version
2, // [2:2] is the sub-list for method output_type
2, // [2:2] is the sub-list for method input_type
2, // [2:2] is the sub-list for extension type_name
2, // [2:2] is the sub-list for extension extendee
0, // [0:2] is the sub-list for field type_name
}
func init() { file_github_com_bio_routing_bio_rd_net_api_net_proto_init() }
func file_github_com_bio_routing_bio_rd_net_api_net_proto_init() {
if File_github_com_bio_routing_bio_rd_net_api_net_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_github_com_bio_routing_bio_rd_net_api_net_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Prefix); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_github_com_bio_routing_bio_rd_net_api_net_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*IP); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDesc,
NumEnums: 1,
NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_github_com_bio_routing_bio_rd_net_api_net_proto_goTypes,
DependencyIndexes: file_github_com_bio_routing_bio_rd_net_api_net_proto_depIdxs,
EnumInfos: file_github_com_bio_routing_bio_rd_net_api_net_proto_enumTypes,
MessageInfos: file_github_com_bio_routing_bio_rd_net_api_net_proto_msgTypes,
}.Build()
File_github_com_bio_routing_bio_rd_net_api_net_proto = out.File
file_github_com_bio_routing_bio_rd_net_api_net_proto_rawDesc = nil
file_github_com_bio_routing_bio_rd_net_api_net_proto_goTypes = nil
file_github_com_bio_routing_bio_rd_net_api_net_proto_depIdxs = nil
}
This diff is collapsed.
This diff is collapsed.
......@@ -291,7 +291,16 @@ func TestDumpRIBInOut(t *testing.T) {
res = append(res, r)
}
assert.Equal(t, test.expected, res, test.name)
expected := make([]string, 0)
for _, exp := range test.expected {
expected = append(expected, exp.String())
}
results := make([]string, 0)
for _, r := range res {
results = append(results, r.String())
}
assert.Equal(t, expected, results, test.name)
}
// Test RIBout
......@@ -337,6 +346,15 @@ func TestDumpRIBInOut(t *testing.T) {
res = append(res, r)
}
assert.Equal(t, test.expected, res, test.name)
expected := make([]string, 0)
for _, exp := range test.expected {
expected = append(expected, exp.String())
}
results := make([]string, 0)
for _, r := range res {
results = append(results, r.String())
}
assert.Equal(t, expected, results, test.name)
}
}
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment