Skip to content
Snippets Groups Projects
Unverified Commit 8b9426ff authored by takt's avatar takt Committed by GitHub
Browse files

RIS: Add VRF string to DumpRIB and make it usable from riscli (#281)

parent d0561428
No related branches found
No related tags found
No related merge requests found
...@@ -501,6 +501,7 @@ func (m *RIBUpdate) GetRoute() *api1.Route { ...@@ -501,6 +501,7 @@ func (m *RIBUpdate) GetRoute() *api1.Route {
type DumpRIBRequest struct { type DumpRIBRequest struct {
Router string `protobuf:"bytes,1,opt,name=router,proto3" json:"router,omitempty"` 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"` VrfId uint64 `protobuf:"varint,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
Vrf string `protobuf:"bytes,4,opt,name=vrf,proto3" json:"vrf,omitempty"`
Afisafi DumpRIBRequest_AFISAFI `protobuf:"varint,3,opt,name=afisafi,proto3,enum=bio.ris.DumpRIBRequest_AFISAFI" json:"afisafi,omitempty"` Afisafi DumpRIBRequest_AFISAFI `protobuf:"varint,3,opt,name=afisafi,proto3,enum=bio.ris.DumpRIBRequest_AFISAFI" json:"afisafi,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"` XXX_unrecognized []byte `json:"-"`
...@@ -546,6 +547,13 @@ func (m *DumpRIBRequest) GetVrfId() uint64 { ...@@ -546,6 +547,13 @@ func (m *DumpRIBRequest) GetVrfId() uint64 {
return 0 return 0
} }
func (m *DumpRIBRequest) GetVrf() string {
if m != nil {
return m.Vrf
}
return ""
}
func (m *DumpRIBRequest) GetAfisafi() DumpRIBRequest_AFISAFI { func (m *DumpRIBRequest) GetAfisafi() DumpRIBRequest_AFISAFI {
if m != nil { if m != nil {
return m.Afisafi return m.Afisafi
...@@ -740,49 +748,49 @@ func init() { ...@@ -740,49 +748,49 @@ func init() {
} }
var fileDescriptor_ffe1202aa518913f = []byte{ var fileDescriptor_ffe1202aa518913f = []byte{
// 670 bytes of a gzipped FileDescriptorProto // 669 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0x5d, 0x4f, 0xdb, 0x3c, 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x55, 0x5d, 0x4f, 0xdb, 0x3c,
0x14, 0x26, 0x04, 0x1a, 0x7a, 0xfa, 0x42, 0x8b, 0x79, 0x79, 0x09, 0x79, 0x2f, 0xd6, 0x45, 0x13, 0x14, 0x26, 0x04, 0x1a, 0x7a, 0xfa, 0x42, 0x8b, 0x79, 0x79, 0x09, 0x79, 0x2f, 0xd6, 0x45, 0x13,
0x2a, 0x42, 0x4b, 0x51, 0x99, 0x98, 0xa6, 0x7d, 0x09, 0x84, 0xa8, 0x22, 0xc1, 0x56, 0x19, 0xb1, 0x2a, 0x42, 0x4b, 0x51, 0x99, 0x98, 0xa6, 0x7d, 0x09, 0x84, 0xa8, 0x22, 0xc1, 0x56, 0x19, 0xb1,
0x8b, 0xdd, 0x54, 0x69, 0xe3, 0x30, 0x4b, 0xe4, 0x63, 0xb6, 0x1b, 0xd1, 0xcb, 0xfd, 0x82, 0xfd, 0x8b, 0xdd, 0x54, 0x69, 0xe3, 0x30, 0x4b, 0xe4, 0x63, 0xb6, 0x1b, 0xd1, 0xcb, 0xfd, 0x82, 0xfd,
0x8c, 0xfd, 0x8c, 0xfd, 0xb5, 0x29, 0x76, 0x9a, 0xa6, 0x83, 0xb1, 0xb1, 0x4d, 0xdc, 0xb4, 0xf6, 0x9e, 0x5d, 0xed, 0xaf, 0x4d, 0xb1, 0xd3, 0x34, 0x1d, 0x8c, 0x0d, 0x0d, 0x71, 0xd3, 0xda, 0xe7,
0x39, 0x7e, 0x7c, 0x9e, 0xe7, 0xd1, 0xf1, 0x09, 0xec, 0x5d, 0x50, 0xf1, 0x61, 0x34, 0x70, 0x86, 0xf8, 0xf1, 0xf3, 0x9c, 0x47, 0xc7, 0x27, 0xb0, 0x77, 0x41, 0xc5, 0xa7, 0xd1, 0xc0, 0x19, 0xc6,
0x71, 0xd8, 0x1e, 0xd0, 0xf8, 0x31, 0x8b, 0x47, 0x82, 0x46, 0x17, 0x6a, 0xed, 0xb7, 0x87, 0xa1, 0x61, 0x7b, 0x40, 0xe3, 0xa7, 0x2c, 0x1e, 0x09, 0x1a, 0x5d, 0xa8, 0xb5, 0xdf, 0x1e, 0x86, 0x7e,
0xdf, 0x66, 0x94, 0xb7, 0xbd, 0x84, 0x66, 0xff, 0x4e, 0xc2, 0x62, 0x11, 0x23, 0x63, 0x40, 0x63, 0x9b, 0x51, 0xde, 0xf6, 0x12, 0x9a, 0xfd, 0x3b, 0x09, 0x8b, 0x45, 0x8c, 0x8c, 0x01, 0x8d, 0x1d,
0x87, 0x51, 0x6e, 0xb5, 0x6f, 0x47, 0x47, 0x44, 0x48, 0x64, 0x44, 0x84, 0x42, 0x5a, 0x3f, 0x29, 0x46, 0xb9, 0xd5, 0xbe, 0x1d, 0x1d, 0x11, 0x21, 0x91, 0x11, 0x11, 0x0a, 0x69, 0xfd, 0x86, 0x2e,
0x97, 0x6d, 0x89, 0x2a, 0x96, 0xad, 0x14, 0xc8, 0x4e, 0x00, 0x4e, 0x7a, 0xa7, 0x98, 0x7c, 0x1c, 0xdb, 0x12, 0x45, 0x96, 0xad, 0x14, 0xc8, 0x4e, 0x00, 0x4e, 0x7a, 0xa7, 0x98, 0x7c, 0x1e, 0x11,
0x11, 0x2e, 0xd0, 0x7f, 0x50, 0x91, 0x49, 0x66, 0x6a, 0x4d, 0xad, 0x55, 0xc5, 0xf9, 0x0e, 0xad, 0x2e, 0xd0, 0x7f, 0x50, 0x91, 0x49, 0x66, 0x6a, 0x4d, 0xad, 0x55, 0xc5, 0xf9, 0x0e, 0xad, 0x43,
0x43, 0x25, 0x65, 0x41, 0x9f, 0xfa, 0xe6, 0x7c, 0x53, 0x6b, 0x2d, 0xe0, 0xc5, 0x94, 0x05, 0xae, 0x25, 0x65, 0x41, 0x9f, 0xfa, 0xe6, 0x7c, 0x53, 0x6b, 0x2d, 0xe0, 0xc5, 0x94, 0x05, 0xae, 0x8f,
0x8f, 0x1a, 0xa0, 0xa7, 0x2c, 0x30, 0x17, 0xe4, 0xd9, 0x6c, 0x89, 0x1e, 0x82, 0x9e, 0x04, 0x57, 0x1a, 0xa0, 0xa7, 0x2c, 0x30, 0x17, 0xe4, 0xd9, 0x6c, 0x89, 0x1e, 0x83, 0x9e, 0x04, 0x57, 0xa6,
0xa6, 0xde, 0xd4, 0x5a, 0xb5, 0x4e, 0xdd, 0xc9, 0xb4, 0x64, 0x04, 0x7b, 0x8c, 0x04, 0xf4, 0x0a, 0xde, 0xd4, 0x5a, 0xb5, 0x4e, 0xdd, 0xc9, 0x6a, 0xc9, 0x04, 0xf6, 0x18, 0x09, 0xe8, 0x15, 0xce,
0x67, 0x39, 0xfb, 0x29, 0xd4, 0x64, 0x45, 0x9e, 0xc4, 0x11, 0x27, 0xa8, 0x95, 0x97, 0xe4, 0xa6, 0x72, 0xf6, 0x73, 0xa8, 0x49, 0x46, 0x9e, 0xc4, 0x11, 0x27, 0xa8, 0x95, 0x53, 0x72, 0x53, 0x6b,
0xd6, 0xd4, 0x5b, 0xb5, 0x4e, 0x43, 0x82, 0x14, 0x45, 0x9c, 0xfd, 0xe6, 0x24, 0x78, 0x46, 0xb5, 0xea, 0xad, 0x5a, 0xa7, 0x21, 0x41, 0x4a, 0x22, 0xce, 0x7e, 0x73, 0x11, 0x3c, 0x93, 0xda, 0x25,
0x4b, 0xc4, 0x3d, 0x53, 0x95, 0x15, 0xef, 0x4c, 0x35, 0x85, 0x46, 0x97, 0x88, 0x93, 0x38, 0xba, 0xe2, 0x81, 0xa5, 0x4a, 0xc6, 0x3b, 0x4b, 0x4d, 0xa1, 0xd1, 0x25, 0xe2, 0x24, 0x8e, 0x2e, 0x08,
0x20, 0xec, 0x3e, 0x09, 0xbf, 0x84, 0xd5, 0x52, 0xdd, 0x3b, 0xd3, 0xfe, 0xaa, 0xc1, 0xea, 0xdb, 0x7b, 0x48, 0xc1, 0xaf, 0x61, 0xb5, 0xc4, 0x7b, 0x67, 0xd9, 0xdf, 0x35, 0x58, 0x7d, 0x3f, 0xe0,
0x01, 0x27, 0x2c, 0x25, 0xd8, 0x3d, 0xfc, 0x6b, 0xc4, 0x5f, 0x80, 0xe1, 0x05, 0x94, 0x7b, 0x01, 0x84, 0xa5, 0x04, 0xbb, 0x87, 0xf7, 0x26, 0xfc, 0x15, 0x18, 0x5e, 0x40, 0xb9, 0x17, 0x50, 0x29,
0x95, 0xe4, 0x57, 0x3a, 0xb6, 0x93, 0x37, 0xb9, 0x73, 0xad, 0x9a, 0x73, 0x70, 0xec, 0x9e, 0x1d, 0x7e, 0xa5, 0x63, 0x3b, 0x79, 0x93, 0x3b, 0xd7, 0xd8, 0x9c, 0x83, 0x63, 0xf7, 0xec, 0xe0, 0xd8,
0x1c, 0xbb, 0x78, 0x02, 0xb1, 0x77, 0xc0, 0xc8, 0x63, 0xa8, 0x0e, 0x35, 0xb7, 0x97, 0x3e, 0x39, 0xc5, 0x13, 0x88, 0xbd, 0x03, 0x46, 0x1e, 0x43, 0x75, 0xa8, 0xb9, 0xbd, 0xf4, 0xd9, 0x79, 0x44,
0x8f, 0xe8, 0xd0, 0xe3, 0xa2, 0x31, 0x97, 0x07, 0xf6, 0x27, 0x01, 0xcd, 0xfe, 0xa4, 0x41, 0x15, 0x87, 0x1e, 0x17, 0x8d, 0xb9, 0x3c, 0xb0, 0x3f, 0x09, 0x68, 0xf6, 0x17, 0x0d, 0xaa, 0xd8, 0x3d,
0xbb, 0x87, 0xe7, 0x89, 0xef, 0x09, 0x82, 0x1e, 0xc1, 0xb2, 0xe7, 0xa7, 0x84, 0x09, 0xca, 0x49, 0x3c, 0x4f, 0x7c, 0x4f, 0x10, 0xf4, 0x04, 0x96, 0x3d, 0x3f, 0x25, 0x4c, 0x50, 0x4e, 0x42, 0x12,
0x48, 0x22, 0x21, 0x05, 0x2c, 0xe1, 0xd9, 0x20, 0xda, 0x82, 0x3a, 0xe5, 0x7d, 0x1a, 0x51, 0x41, 0x09, 0x59, 0xc0, 0x12, 0x9e, 0x0d, 0xa2, 0x2d, 0xa8, 0x53, 0xde, 0xa7, 0x11, 0x15, 0xd4, 0xbb,
0xbd, 0xcb, 0xbe, 0x3f, 0x0a, 0x13, 0x49, 0x73, 0x09, 0x2f, 0x53, 0xee, 0xaa, 0xe8, 0xd1, 0x28, 0xec, 0xfb, 0xa3, 0x30, 0x91, 0x32, 0x97, 0xf0, 0x32, 0xe5, 0xae, 0x8a, 0x1e, 0x8d, 0xc2, 0x04,
0x4c, 0xd0, 0x16, 0x2c, 0x4a, 0xe5, 0x52, 0xee, 0x4d, 0x36, 0xaa, 0xb4, 0xfd, 0x45, 0x83, 0x95, 0x6d, 0xc1, 0xa2, 0xac, 0x5c, 0x96, 0x7b, 0x93, 0x8d, 0x2a, 0x6d, 0x7f, 0xd3, 0x60, 0x25, 0x03,
0x0c, 0xf0, 0xfb, 0x16, 0x3e, 0xfb, 0xde, 0xb0, 0x07, 0x85, 0x61, 0xb3, 0x17, 0xff, 0xa1, 0x5b, 0xdc, 0xa7, 0x85, 0x2f, 0x7e, 0xb6, 0xf0, 0x51, 0x61, 0xe1, 0x2c, 0xd5, 0x5f, 0xfa, 0xb7, 0x0f,
0xfb, 0xf0, 0x4f, 0x71, 0x5f, 0x72, 0x39, 0x9e, 0x2a, 0xd4, 0x6e, 0x57, 0xb8, 0x26, 0xdb, 0x4c, 0xff, 0x14, 0xf7, 0x25, 0x97, 0xe3, 0x69, 0xcd, 0xda, 0xed, 0x35, 0xaf, 0xc9, 0xc6, 0x93, 0x21,
0x86, 0x18, 0xcf, 0xa9, 0xd8, 0xef, 0xa0, 0xa2, 0x22, 0x68, 0x13, 0x96, 0xf8, 0x98, 0xf7, 0x23, 0xc6, 0x73, 0x29, 0xf6, 0x07, 0xa8, 0xa8, 0x08, 0xda, 0x84, 0x25, 0x3e, 0xe6, 0xfd, 0xc8, 0x0b,
0x2f, 0x24, 0xb9, 0x5e, 0x83, 0x8f, 0xf9, 0x1b, 0x2f, 0x24, 0x68, 0x03, 0x0c, 0x25, 0x98, 0x9b, 0x49, 0xee, 0x80, 0xc1, 0xc7, 0xfc, 0x9d, 0x17, 0x12, 0xb4, 0x01, 0x86, 0xb2, 0x80, 0x9b, 0xf3,
0xf3, 0x4d, 0xbd, 0xb5, 0x80, 0x2b, 0x52, 0x31, 0x47, 0x26, 0x18, 0x9e, 0xef, 0x33, 0xc2, 0xb9, 0x4d, 0xbd, 0xb5, 0x80, 0x2b, 0xd2, 0x03, 0x8e, 0x4c, 0x30, 0x3c, 0xdf, 0x67, 0x84, 0x73, 0x59,
0x94, 0x5c, 0xc5, 0x93, 0xad, 0xfd, 0x1a, 0x50, 0xb9, 0x58, 0xde, 0xd4, 0xdb, 0x60, 0x28, 0x0f, 0x72, 0x15, 0x4f, 0xb6, 0xf6, 0x5b, 0x40, 0x65, 0xb2, 0xbc, 0xcd, 0xb7, 0xc1, 0x50, 0xae, 0x4e,
0x27, 0x5d, 0x5d, 0x2f, 0x2c, 0x52, 0x47, 0xf1, 0x24, 0xdf, 0xf9, 0xac, 0xc3, 0x26, 0x56, 0xb3, 0xfa, 0xbc, 0x5e, 0x58, 0xa4, 0x8e, 0xe2, 0x49, 0xbe, 0xf3, 0x55, 0x87, 0x4d, 0xac, 0xa6, 0xa3,
0xd0, 0x8d, 0x82, 0x98, 0x85, 0x9e, 0xa0, 0x71, 0x74, 0x46, 0x58, 0x4a, 0x87, 0x04, 0x75, 0x40, 0x1b, 0x05, 0x31, 0x0b, 0x3d, 0x41, 0xe3, 0xe8, 0x8c, 0xb0, 0x94, 0x0e, 0x09, 0xea, 0x80, 0x7e,
0x3f, 0xe9, 0x9d, 0xa2, 0xb5, 0x02, 0x3e, 0x1d, 0x87, 0xd6, 0xbf, 0xb3, 0x41, 0x55, 0xda, 0x9e, 0xd2, 0x3b, 0x45, 0x6b, 0x05, 0x7c, 0x3a, 0x20, 0xad, 0x7f, 0x67, 0x83, 0x8a, 0xda, 0x9e, 0xcb,
0xcb, 0x30, 0x5d, 0x22, 0x4a, 0x98, 0xe9, 0x5c, 0x2a, 0x61, 0x4a, 0xa3, 0xc3, 0x9e, 0x43, 0x5d, 0x30, 0x5d, 0x22, 0x4a, 0x98, 0xe9, 0xa4, 0x2a, 0x61, 0x4a, 0xc3, 0xc4, 0x9e, 0x43, 0x5d, 0x35,
0x35, 0xbd, 0x14, 0x27, 0x64, 0xcd, 0x9c, 0x9a, 0x31, 0xd2, 0xfa, 0xff, 0xc6, 0x5c, 0x71, 0xd1, 0xcf, 0x94, 0x26, 0x64, 0xcd, 0x9c, 0x9a, 0x31, 0xd2, 0xfa, 0xff, 0xc6, 0x5c, 0x71, 0xd1, 0x11,
0x11, 0x54, 0x8b, 0x37, 0x8e, 0x36, 0xcb, 0x67, 0x67, 0xe6, 0x8d, 0x65, 0xdd, 0x94, 0x2a, 0x6e, 0x54, 0x8b, 0x57, 0x8f, 0x36, 0xcb, 0x67, 0x67, 0x26, 0x90, 0x65, 0xdd, 0x94, 0x2a, 0x6e, 0x79,
0x79, 0x05, 0x30, 0x7d, 0x7b, 0x25, 0x3a, 0xd7, 0x1e, 0xa4, 0x85, 0xa6, 0xc6, 0x4e, 0x1e, 0xd6, 0x03, 0x30, 0x7d, 0x8d, 0x25, 0x39, 0xd7, 0x9e, 0xa8, 0x85, 0xa6, 0xc6, 0x4e, 0x9e, 0xda, 0xae,
0xae, 0x86, 0x9e, 0x83, 0x91, 0xb7, 0x0e, 0xda, 0xf8, 0x41, 0x73, 0x5a, 0xeb, 0xd7, 0x13, 0xc9, 0x86, 0x5e, 0x82, 0x91, 0xb7, 0x0e, 0xda, 0xf8, 0x45, 0x73, 0x5a, 0xeb, 0xd7, 0x13, 0xc9, 0xe5,
0xe5, 0x78, 0x57, 0x3b, 0xdc, 0x79, 0xbf, 0xfd, 0xcb, 0x9f, 0xc6, 0x41, 0x45, 0x7e, 0xa8, 0xf6, 0x78, 0x57, 0x3b, 0xdc, 0xf9, 0xb8, 0xfd, 0xc7, 0x1f, 0xcb, 0x41, 0x45, 0x7e, 0xba, 0xf6, 0x7e,
0xbe, 0x05, 0x00, 0x00, 0xff, 0xff, 0xc5, 0xf1, 0x19, 0x78, 0x4e, 0x07, 0x00, 0x00, 0x04, 0x00, 0x00, 0xff, 0xff, 0x22, 0xcc, 0x06, 0xa4, 0x60, 0x07, 0x00, 0x00,
} }
// Reference imports to suppress errors if they are not otherwise used. // Reference imports to suppress errors if they are not otherwise used.
......
...@@ -69,6 +69,7 @@ message RIBUpdate { ...@@ -69,6 +69,7 @@ message RIBUpdate {
message DumpRIBRequest { message DumpRIBRequest {
string router = 1; string router = 1;
uint64 vrf_id = 2; uint64 vrf_id = 2;
string vrf = 4;
enum AFISAFI { enum AFISAFI {
IPv4Unicast = 0; IPv4Unicast = 0;
IPv6Unicast = 1; IPv6Unicast = 1;
......
...@@ -217,6 +217,11 @@ func (s *Server) ObserveRIB(req *pb.ObserveRIBRequest, stream pb.RoutingInformat ...@@ -217,6 +217,11 @@ func (s *Server) ObserveRIB(req *pb.ObserveRIBRequest, stream pb.RoutingInformat
// DumpRIB implements the DumpRIB RPC // DumpRIB implements the DumpRIB RPC
func (s *Server) DumpRIB(req *pb.DumpRIBRequest, stream pb.RoutingInformationService_DumpRIBServer) error { func (s *Server) DumpRIB(req *pb.DumpRIBRequest, stream pb.RoutingInformationService_DumpRIBServer) error {
vrfID, err := getVRFID(req)
if err != nil {
return err
}
ipVersion := netapi.IP_IPv4 ipVersion := netapi.IP_IPv4
switch req.Afisafi { switch req.Afisafi {
case pb.DumpRIBRequest_IPv4Unicast: case pb.DumpRIBRequest_IPv4Unicast:
...@@ -227,9 +232,9 @@ func (s *Server) DumpRIB(req *pb.DumpRIBRequest, stream pb.RoutingInformationSer ...@@ -227,9 +232,9 @@ func (s *Server) DumpRIB(req *pb.DumpRIBRequest, stream pb.RoutingInformationSer
return fmt.Errorf("Unknown AFI/SAFI") return fmt.Errorf("Unknown AFI/SAFI")
} }
rib, err := s.getRIB(req.Router, req.VrfId, ipVersion) rib, err := s.getRIB(req.Router, vrfID, ipVersion)
if err != nil { if err != nil {
return wrapGetRIBErr(err, req.Router, req.VrfId, ipVersion) return wrapGetRIBErr(err, req.Router, vrfID, ipVersion)
} }
toSend := &pb.DumpRIBReply{ toSend := &pb.DumpRIBReply{
......
...@@ -47,7 +47,7 @@ func NewDumpLocRIBCommand() cli.Command { ...@@ -47,7 +47,7 @@ func NewDumpLocRIBCommand() cli.Command {
client := pb.NewRoutingInformationServiceClient(conn) client := pb.NewRoutingInformationServiceClient(conn)
for _, afisafi := range afisafis { for _, afisafi := range afisafis {
fmt.Printf(" --- Dump %s ---\n", pb.DumpRIBRequest_AFISAFI_name[int32(afisafi)]) fmt.Printf(" --- Dump %s ---\n", pb.DumpRIBRequest_AFISAFI_name[int32(afisafi)])
err = dumpRIB(client, c.GlobalString("router"), c.GlobalUint64("vrf_id"), afisafi) err = dumpRIB(client, c.GlobalString("router"), c.GlobalUint64("vrf_id"), c.GlobalString("vrf"), afisafi)
if err != nil { if err != nil {
log.Errorf("DumpRIB failed: %v", err) log.Errorf("DumpRIB failed: %v", err)
os.Exit(1) os.Exit(1)
...@@ -60,10 +60,11 @@ func NewDumpLocRIBCommand() cli.Command { ...@@ -60,10 +60,11 @@ func NewDumpLocRIBCommand() cli.Command {
return cmd return cmd
} }
func dumpRIB(c pb.RoutingInformationServiceClient, routerName string, vrfID uint64, afisafi pb.DumpRIBRequest_AFISAFI) error { func dumpRIB(c pb.RoutingInformationServiceClient, routerName string, vrfID uint64, vrf string, afisafi pb.DumpRIBRequest_AFISAFI) error {
client, err := c.DumpRIB(context.Background(), &pb.DumpRIBRequest{ client, err := c.DumpRIB(context.Background(), &pb.DumpRIBRequest{
Router: routerName, Router: routerName,
VrfId: vrfID, VrfId: vrfID,
Vrf: vrf,
Afisafi: afisafi, Afisafi: afisafi,
}) })
if err != nil { if err != nil {
......
...@@ -42,7 +42,7 @@ func NewLPMCommand() cli.Command { ...@@ -42,7 +42,7 @@ func NewLPMCommand() cli.Command {
pfx := bnet.NewPfx(ipAddr, pfxLen) pfx := bnet.NewPfx(ipAddr, pfxLen)
client := pb.NewRoutingInformationServiceClient(conn) client := pb.NewRoutingInformationServiceClient(conn)
err = lpm(client, c.GlobalString("router"), c.GlobalUint64("vrf_id"), pfx) err = lpm(client, c.GlobalString("router"), c.GlobalUint64("vrf_id"), c.GlobalString("vrf"), pfx)
if err != nil { if err != nil {
log.Fatalf("LPM failed: %v", err) log.Fatalf("LPM failed: %v", err)
} }
...@@ -53,10 +53,11 @@ func NewLPMCommand() cli.Command { ...@@ -53,10 +53,11 @@ func NewLPMCommand() cli.Command {
return cmd return cmd
} }
func lpm(c pb.RoutingInformationServiceClient, routerName string, vrfID uint64, pfx bnet.Prefix) error { func lpm(c pb.RoutingInformationServiceClient, routerName string, vrfID uint64, vrf string, pfx bnet.Prefix) error {
resp, err := c.LPM(context.Background(), &pb.LPMRequest{ resp, err := c.LPM(context.Background(), &pb.LPMRequest{
Router: routerName, Router: routerName,
VrfId: vrfID, VrfId: vrfID,
Vrf: vrf,
Pfx: pfx.ToProto(), Pfx: pfx.ToProto(),
}) })
if err != nil { if err != nil {
......
...@@ -27,6 +27,11 @@ func main() { ...@@ -27,6 +27,11 @@ func main() {
Usage: "VRF ID", Usage: "VRF ID",
Value: 0, Value: 0,
}, },
cli.StringFlag{
Name: "vrf",
Usage: "VRF",
Value: "",
},
} }
app.Commands = []cli.Command{ app.Commands = []cli.Command{
......
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