13 changed files with 16729 additions and 87 deletions
@ -0,0 +1,65 @@
@@ -0,0 +1,65 @@
|
||||
import grpc |
||||
|
||||
from backend.gobgp_api import gobgp_pb2_grpc, attribute_pb2 |
||||
from backend.gobgp_api.gobgp_pb2 import TableType, Family, ListPeerRequest, ListPathRequest |
||||
|
||||
|
||||
def get_bgp_data(gobgp_host): |
||||
_timeout = 10 |
||||
|
||||
channel = grpc.insecure_channel('{}:50051'.format(gobgp_host)) |
||||
stub = gobgp_pb2_grpc.GobgpApiStub(channel) |
||||
data = [] |
||||
|
||||
peers = stub.ListPeer(ListPeerRequest(), _timeout) |
||||
for peer in peers: |
||||
entry = { |
||||
"local_id": peer.peer.state.router_id, |
||||
"local_as": peer.peer.conf.peer_as, |
||||
"peers": [], # we don't export any peers |
||||
"routes": [], |
||||
} |
||||
neigh = peer.peer.conf.neighbor_address |
||||
|
||||
for af in [Family.Afi.AFI_IP, Family.Afi.AFI_IP6]: |
||||
req = ListPathRequest( |
||||
name=neigh, |
||||
table_type=TableType.ADJ_IN, |
||||
family=Family(afi=af, safi=Family.Safi.SAFI_UNICAST), |
||||
sort_type=ListPathRequest.SortType.PREFIX) |
||||
rib = stub.ListPath(req) |
||||
for dest in rib: |
||||
prefix = dest.destination.prefix |
||||
for path in dest.destination.paths: |
||||
as_path = [] |
||||
next_hop = "<unknown>" # currently here to prevent error from NOT NULL constraint |
||||
|
||||
# parse attrs |
||||
for pattr in path.pattrs: |
||||
if pattr.type_url == "type.googleapis.com/gobgpapi.NextHopAttribute": |
||||
nh = attribute_pb2.NextHopAttribute() |
||||
nh.ParseFromString(pattr.value) |
||||
next_hop = nh.next_hop |
||||
elif pattr.type_url == "type.googleapis.com/gobgpapi.AsPathAttribute": |
||||
asp = attribute_pb2.AsPathAttribute() |
||||
asp.ParseFromString(pattr.value) |
||||
for seg in asp.segments: |
||||
if seg.type == 2: |
||||
as_path = seg.numbers |
||||
elif pattr.type_url == "type.googleapis.com/gobgpapi.MpReachNLRIAttribute": |
||||
mpreach = attribute_pb2.MpReachNLRIAttribute() |
||||
mpreach.ParseFromString(pattr.value) |
||||
next_hop = mpreach.next_hops[0] |
||||
|
||||
if not as_path: |
||||
continue |
||||
|
||||
route = { |
||||
"prefix": prefix, |
||||
"path": as_path, |
||||
"nexthop": next_hop, |
||||
} |
||||
entry["routes"].append(route) |
||||
|
||||
data.append(entry) |
||||
return data |
File diff suppressed because one or more lines are too long
@ -0,0 +1,3 @@
@@ -0,0 +1,3 @@
|
||||
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! |
||||
import grpc |
||||
|
@ -0,0 +1,692 @@
@@ -0,0 +1,692 @@
|
||||
# -*- coding: utf-8 -*- |
||||
# Generated by the protocol buffer compiler. DO NOT EDIT! |
||||
# source: capability.proto |
||||
|
||||
from google.protobuf.internal import enum_type_wrapper |
||||
from google.protobuf import descriptor as _descriptor |
||||
from google.protobuf import message as _message |
||||
from google.protobuf import reflection as _reflection |
||||
from google.protobuf import symbol_database as _symbol_database |
||||
# @@protoc_insertion_point(imports) |
||||
|
||||
_sym_db = _symbol_database.Default() |
||||
|
||||
|
||||
import gobgp_pb2 as gobgp__pb2 |
||||
|
||||
|
||||
DESCRIPTOR = _descriptor.FileDescriptor( |
||||
name='capability.proto', |
||||
package='gobgpapi', |
||||
syntax='proto3', |
||||
serialized_options=None, |
||||
serialized_pb=b'\n\x10\x63\x61pability.proto\x12\x08gobgpapi\x1a\x0bgobgp.proto\";\n\x17MultiProtocolCapability\x12 \n\x06\x66\x61mily\x18\x01 \x01(\x0b\x32\x10.gobgpapi.Family\"\x18\n\x16RouteRefreshCapability\"\x1d\n\x1b\x43\x61rryingLabelInfoCapability\"q\n\x1e\x45xtendedNexthopCapabilityTuple\x12%\n\x0bnlri_family\x18\x01 \x01(\x0b\x32\x10.gobgpapi.Family\x12(\n\x0enexthop_family\x18\x02 \x01(\x0b\x32\x10.gobgpapi.Family\"U\n\x19\x45xtendedNexthopCapability\x12\x38\n\x06tuples\x18\x01 \x03(\x0b\x32(.gobgpapi.ExtendedNexthopCapabilityTuple\"Q\n\x1eGracefulRestartCapabilityTuple\x12 \n\x06\x66\x61mily\x18\x01 \x01(\x0b\x32\x10.gobgpapi.Family\x12\r\n\x05\x66lags\x18\x02 \x01(\r\"r\n\x19GracefulRestartCapability\x12\r\n\x05\x66lags\x18\x01 \x01(\r\x12\x0c\n\x04time\x18\x02 \x01(\r\x12\x38\n\x06tuples\x18\x03 \x03(\x0b\x32(.gobgpapi.GracefulRestartCapabilityTuple\")\n\x1b\x46ourOctetASNumberCapability\x12\n\n\x02\x61s\x18\x01 \x01(\r\"_\n\x16\x41\x64\x64PathCapabilityTuple\x12 \n\x06\x66\x61mily\x18\x01 \x01(\x0b\x32\x10.gobgpapi.Family\x12#\n\x04mode\x18\x02 \x01(\x0e\x32\x15.gobgpapi.AddPathMode\"E\n\x11\x41\x64\x64PathCapability\x12\x30\n\x06tuples\x18\x01 \x03(\x0b\x32 .gobgpapi.AddPathCapabilityTuple\" \n\x1e\x45nhancedRouteRefreshCapability\"h\n\'LongLivedGracefulRestartCapabilityTuple\x12 \n\x06\x66\x61mily\x18\x01 \x01(\x0b\x32\x10.gobgpapi.Family\x12\r\n\x05\x66lags\x18\x02 \x01(\r\x12\x0c\n\x04time\x18\x03 \x01(\r\"g\n\"LongLivedGracefulRestartCapability\x12\x41\n\x06tuples\x18\x01 \x03(\x0b\x32\x31.gobgpapi.LongLivedGracefulRestartCapabilityTuple\"\x1d\n\x1bRouteRefreshCiscoCapability\"0\n\x11UnknownCapability\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05value\x18\x02 \x01(\x0c*L\n\x0b\x41\x64\x64PathMode\x12\r\n\tMODE_NONE\x10\x00\x12\x10\n\x0cMODE_RECEIVE\x10\x01\x12\r\n\tMODE_SEND\x10\x02\x12\r\n\tMODE_BOTH\x10\x03\x62\x06proto3' |
||||
, |
||||
dependencies=[gobgp__pb2.DESCRIPTOR,]) |
||||
|
||||
_ADDPATHMODE = _descriptor.EnumDescriptor( |
||||
name='AddPathMode', |
||||
full_name='gobgpapi.AddPathMode', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
values=[ |
||||
_descriptor.EnumValueDescriptor( |
||||
name='MODE_NONE', index=0, number=0, |
||||
serialized_options=None, |
||||
type=None), |
||||
_descriptor.EnumValueDescriptor( |
||||
name='MODE_RECEIVE', index=1, number=1, |
||||
serialized_options=None, |
||||
type=None), |
||||
_descriptor.EnumValueDescriptor( |
||||
name='MODE_SEND', index=2, number=2, |
||||
serialized_options=None, |
||||
type=None), |
||||
_descriptor.EnumValueDescriptor( |
||||
name='MODE_BOTH', index=3, number=3, |
||||
serialized_options=None, |
||||
type=None), |
||||
], |
||||
containing_type=None, |
||||
serialized_options=None, |
||||
serialized_start=1099, |
||||
serialized_end=1175, |
||||
) |
||||
_sym_db.RegisterEnumDescriptor(_ADDPATHMODE) |
||||
|
||||
AddPathMode = enum_type_wrapper.EnumTypeWrapper(_ADDPATHMODE) |
||||
MODE_NONE = 0 |
||||
MODE_RECEIVE = 1 |
||||
MODE_SEND = 2 |
||||
MODE_BOTH = 3 |
||||
|
||||
|
||||
|
||||
_MULTIPROTOCOLCAPABILITY = _descriptor.Descriptor( |
||||
name='MultiProtocolCapability', |
||||
full_name='gobgpapi.MultiProtocolCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='family', full_name='gobgpapi.MultiProtocolCapability.family', index=0, |
||||
number=1, type=11, cpp_type=10, label=1, |
||||
has_default_value=False, default_value=None, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=43, |
||||
serialized_end=102, |
||||
) |
||||
|
||||
|
||||
_ROUTEREFRESHCAPABILITY = _descriptor.Descriptor( |
||||
name='RouteRefreshCapability', |
||||
full_name='gobgpapi.RouteRefreshCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=104, |
||||
serialized_end=128, |
||||
) |
||||
|
||||
|
||||
_CARRYINGLABELINFOCAPABILITY = _descriptor.Descriptor( |
||||
name='CarryingLabelInfoCapability', |
||||
full_name='gobgpapi.CarryingLabelInfoCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=130, |
||||
serialized_end=159, |
||||
) |
||||
|
||||
|
||||
_EXTENDEDNEXTHOPCAPABILITYTUPLE = _descriptor.Descriptor( |
||||
name='ExtendedNexthopCapabilityTuple', |
||||
full_name='gobgpapi.ExtendedNexthopCapabilityTuple', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='nlri_family', full_name='gobgpapi.ExtendedNexthopCapabilityTuple.nlri_family', index=0, |
||||
number=1, type=11, cpp_type=10, label=1, |
||||
has_default_value=False, default_value=None, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
_descriptor.FieldDescriptor( |
||||
name='nexthop_family', full_name='gobgpapi.ExtendedNexthopCapabilityTuple.nexthop_family', index=1, |
||||
number=2, type=11, cpp_type=10, label=1, |
||||
has_default_value=False, default_value=None, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=161, |
||||
serialized_end=274, |
||||
) |
||||
|
||||
|
||||
_EXTENDEDNEXTHOPCAPABILITY = _descriptor.Descriptor( |
||||
name='ExtendedNexthopCapability', |
||||
full_name='gobgpapi.ExtendedNexthopCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='tuples', full_name='gobgpapi.ExtendedNexthopCapability.tuples', index=0, |
||||
number=1, type=11, cpp_type=10, label=3, |
||||
has_default_value=False, default_value=[], |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=276, |
||||
serialized_end=361, |
||||
) |
||||
|
||||
|
||||
_GRACEFULRESTARTCAPABILITYTUPLE = _descriptor.Descriptor( |
||||
name='GracefulRestartCapabilityTuple', |
||||
full_name='gobgpapi.GracefulRestartCapabilityTuple', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='family', full_name='gobgpapi.GracefulRestartCapabilityTuple.family', index=0, |
||||
number=1, type=11, cpp_type=10, label=1, |
||||
has_default_value=False, default_value=None, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
_descriptor.FieldDescriptor( |
||||
name='flags', full_name='gobgpapi.GracefulRestartCapabilityTuple.flags', index=1, |
||||
number=2, type=13, cpp_type=3, label=1, |
||||
has_default_value=False, default_value=0, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=363, |
||||
serialized_end=444, |
||||
) |
||||
|
||||
|
||||
_GRACEFULRESTARTCAPABILITY = _descriptor.Descriptor( |
||||
name='GracefulRestartCapability', |
||||
full_name='gobgpapi.GracefulRestartCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='flags', full_name='gobgpapi.GracefulRestartCapability.flags', index=0, |
||||
number=1, type=13, cpp_type=3, label=1, |
||||
has_default_value=False, default_value=0, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
_descriptor.FieldDescriptor( |
||||
name='time', full_name='gobgpapi.GracefulRestartCapability.time', index=1, |
||||
number=2, type=13, cpp_type=3, label=1, |
||||
has_default_value=False, default_value=0, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
_descriptor.FieldDescriptor( |
||||
name='tuples', full_name='gobgpapi.GracefulRestartCapability.tuples', index=2, |
||||
number=3, type=11, cpp_type=10, label=3, |
||||
has_default_value=False, default_value=[], |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=446, |
||||
serialized_end=560, |
||||
) |
||||
|
||||
|
||||
_FOUROCTETASNUMBERCAPABILITY = _descriptor.Descriptor( |
||||
name='FourOctetASNumberCapability', |
||||
full_name='gobgpapi.FourOctetASNumberCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='as', full_name='gobgpapi.FourOctetASNumberCapability.as', index=0, |
||||
number=1, type=13, cpp_type=3, label=1, |
||||
has_default_value=False, default_value=0, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=562, |
||||
serialized_end=603, |
||||
) |
||||
|
||||
|
||||
_ADDPATHCAPABILITYTUPLE = _descriptor.Descriptor( |
||||
name='AddPathCapabilityTuple', |
||||
full_name='gobgpapi.AddPathCapabilityTuple', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='family', full_name='gobgpapi.AddPathCapabilityTuple.family', index=0, |
||||
number=1, type=11, cpp_type=10, label=1, |
||||
has_default_value=False, default_value=None, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
_descriptor.FieldDescriptor( |
||||
name='mode', full_name='gobgpapi.AddPathCapabilityTuple.mode', index=1, |
||||
number=2, type=14, cpp_type=8, label=1, |
||||
has_default_value=False, default_value=0, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=605, |
||||
serialized_end=700, |
||||
) |
||||
|
||||
|
||||
_ADDPATHCAPABILITY = _descriptor.Descriptor( |
||||
name='AddPathCapability', |
||||
full_name='gobgpapi.AddPathCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='tuples', full_name='gobgpapi.AddPathCapability.tuples', index=0, |
||||
number=1, type=11, cpp_type=10, label=3, |
||||
has_default_value=False, default_value=[], |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=702, |
||||
serialized_end=771, |
||||
) |
||||
|
||||
|
||||
_ENHANCEDROUTEREFRESHCAPABILITY = _descriptor.Descriptor( |
||||
name='EnhancedRouteRefreshCapability', |
||||
full_name='gobgpapi.EnhancedRouteRefreshCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=773, |
||||
serialized_end=805, |
||||
) |
||||
|
||||
|
||||
_LONGLIVEDGRACEFULRESTARTCAPABILITYTUPLE = _descriptor.Descriptor( |
||||
name='LongLivedGracefulRestartCapabilityTuple', |
||||
full_name='gobgpapi.LongLivedGracefulRestartCapabilityTuple', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='family', full_name='gobgpapi.LongLivedGracefulRestartCapabilityTuple.family', index=0, |
||||
number=1, type=11, cpp_type=10, label=1, |
||||
has_default_value=False, default_value=None, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
_descriptor.FieldDescriptor( |
||||
name='flags', full_name='gobgpapi.LongLivedGracefulRestartCapabilityTuple.flags', index=1, |
||||
number=2, type=13, cpp_type=3, label=1, |
||||
has_default_value=False, default_value=0, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
_descriptor.FieldDescriptor( |
||||
name='time', full_name='gobgpapi.LongLivedGracefulRestartCapabilityTuple.time', index=2, |
||||
number=3, type=13, cpp_type=3, label=1, |
||||
has_default_value=False, default_value=0, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=807, |
||||
serialized_end=911, |
||||
) |
||||
|
||||
|
||||
_LONGLIVEDGRACEFULRESTARTCAPABILITY = _descriptor.Descriptor( |
||||
name='LongLivedGracefulRestartCapability', |
||||
full_name='gobgpapi.LongLivedGracefulRestartCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='tuples', full_name='gobgpapi.LongLivedGracefulRestartCapability.tuples', index=0, |
||||
number=1, type=11, cpp_type=10, label=3, |
||||
has_default_value=False, default_value=[], |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=913, |
||||
serialized_end=1016, |
||||
) |
||||
|
||||
|
||||
_ROUTEREFRESHCISCOCAPABILITY = _descriptor.Descriptor( |
||||
name='RouteRefreshCiscoCapability', |
||||
full_name='gobgpapi.RouteRefreshCiscoCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=1018, |
||||
serialized_end=1047, |
||||
) |
||||
|
||||
|
||||
_UNKNOWNCAPABILITY = _descriptor.Descriptor( |
||||
name='UnknownCapability', |
||||
full_name='gobgpapi.UnknownCapability', |
||||
filename=None, |
||||
file=DESCRIPTOR, |
||||
containing_type=None, |
||||
fields=[ |
||||
_descriptor.FieldDescriptor( |
||||
name='code', full_name='gobgpapi.UnknownCapability.code', index=0, |
||||
number=1, type=13, cpp_type=3, label=1, |
||||
has_default_value=False, default_value=0, |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
_descriptor.FieldDescriptor( |
||||
name='value', full_name='gobgpapi.UnknownCapability.value', index=1, |
||||
number=2, type=12, cpp_type=9, label=1, |
||||
has_default_value=False, default_value=b"", |
||||
message_type=None, enum_type=None, containing_type=None, |
||||
is_extension=False, extension_scope=None, |
||||
serialized_options=None, file=DESCRIPTOR), |
||||
], |
||||
extensions=[ |
||||
], |
||||
nested_types=[], |
||||
enum_types=[ |
||||
], |
||||
serialized_options=None, |
||||
is_extendable=False, |
||||
syntax='proto3', |
||||
extension_ranges=[], |
||||
oneofs=[ |
||||
], |
||||
serialized_start=1049, |
||||
serialized_end=1097, |
||||
) |
||||
|
||||
_MULTIPROTOCOLCAPABILITY.fields_by_name['family'].message_type = gobgp__pb2._FAMILY |
||||
_EXTENDEDNEXTHOPCAPABILITYTUPLE.fields_by_name['nlri_family'].message_type = gobgp__pb2._FAMILY |
||||
_EXTENDEDNEXTHOPCAPABILITYTUPLE.fields_by_name['nexthop_family'].message_type = gobgp__pb2._FAMILY |
||||
_EXTENDEDNEXTHOPCAPABILITY.fields_by_name['tuples'].message_type = _EXTENDEDNEXTHOPCAPABILITYTUPLE |
||||
_GRACEFULRESTARTCAPABILITYTUPLE.fields_by_name['family'].message_type = gobgp__pb2._FAMILY |
||||
_GRACEFULRESTARTCAPABILITY.fields_by_name['tuples'].message_type = _GRACEFULRESTARTCAPABILITYTUPLE |
||||
_ADDPATHCAPABILITYTUPLE.fields_by_name['family'].message_type = gobgp__pb2._FAMILY |
||||
_ADDPATHCAPABILITYTUPLE.fields_by_name['mode'].enum_type = _ADDPATHMODE |
||||
_ADDPATHCAPABILITY.fields_by_name['tuples'].message_type = _ADDPATHCAPABILITYTUPLE |
||||
_LONGLIVEDGRACEFULRESTARTCAPABILITYTUPLE.fields_by_name['family'].message_type = gobgp__pb2._FAMILY |
||||
_LONGLIVEDGRACEFULRESTARTCAPABILITY.fields_by_name['tuples'].message_type = _LONGLIVEDGRACEFULRESTARTCAPABILITYTUPLE |
||||
DESCRIPTOR.message_types_by_name['MultiProtocolCapability'] = _MULTIPROTOCOLCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['RouteRefreshCapability'] = _ROUTEREFRESHCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['CarryingLabelInfoCapability'] = _CARRYINGLABELINFOCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['ExtendedNexthopCapabilityTuple'] = _EXTENDEDNEXTHOPCAPABILITYTUPLE |
||||
DESCRIPTOR.message_types_by_name['ExtendedNexthopCapability'] = _EXTENDEDNEXTHOPCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['GracefulRestartCapabilityTuple'] = _GRACEFULRESTARTCAPABILITYTUPLE |
||||
DESCRIPTOR.message_types_by_name['GracefulRestartCapability'] = _GRACEFULRESTARTCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['FourOctetASNumberCapability'] = _FOUROCTETASNUMBERCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['AddPathCapabilityTuple'] = _ADDPATHCAPABILITYTUPLE |
||||
DESCRIPTOR.message_types_by_name['AddPathCapability'] = _ADDPATHCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['EnhancedRouteRefreshCapability'] = _ENHANCEDROUTEREFRESHCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['LongLivedGracefulRestartCapabilityTuple'] = _LONGLIVEDGRACEFULRESTARTCAPABILITYTUPLE |
||||
DESCRIPTOR.message_types_by_name['LongLivedGracefulRestartCapability'] = _LONGLIVEDGRACEFULRESTARTCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['RouteRefreshCiscoCapability'] = _ROUTEREFRESHCISCOCAPABILITY |
||||
DESCRIPTOR.message_types_by_name['UnknownCapability'] = _UNKNOWNCAPABILITY |
||||
DESCRIPTOR.enum_types_by_name['AddPathMode'] = _ADDPATHMODE |
||||
_sym_db.RegisterFileDescriptor(DESCRIPTOR) |
||||
|
||||
MultiProtocolCapability = _reflection.GeneratedProtocolMessageType('MultiProtocolCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _MULTIPROTOCOLCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.MultiProtocolCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(MultiProtocolCapability) |
||||
|
||||
RouteRefreshCapability = _reflection.GeneratedProtocolMessageType('RouteRefreshCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _ROUTEREFRESHCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.RouteRefreshCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(RouteRefreshCapability) |
||||
|
||||
CarryingLabelInfoCapability = _reflection.GeneratedProtocolMessageType('CarryingLabelInfoCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _CARRYINGLABELINFOCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.CarryingLabelInfoCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(CarryingLabelInfoCapability) |
||||
|
||||
ExtendedNexthopCapabilityTuple = _reflection.GeneratedProtocolMessageType('ExtendedNexthopCapabilityTuple', (_message.Message,), { |
||||
'DESCRIPTOR' : _EXTENDEDNEXTHOPCAPABILITYTUPLE, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.ExtendedNexthopCapabilityTuple) |
||||
}) |
||||
_sym_db.RegisterMessage(ExtendedNexthopCapabilityTuple) |
||||
|
||||
ExtendedNexthopCapability = _reflection.GeneratedProtocolMessageType('ExtendedNexthopCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _EXTENDEDNEXTHOPCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.ExtendedNexthopCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(ExtendedNexthopCapability) |
||||
|
||||
GracefulRestartCapabilityTuple = _reflection.GeneratedProtocolMessageType('GracefulRestartCapabilityTuple', (_message.Message,), { |
||||
'DESCRIPTOR' : _GRACEFULRESTARTCAPABILITYTUPLE, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.GracefulRestartCapabilityTuple) |
||||
}) |
||||
_sym_db.RegisterMessage(GracefulRestartCapabilityTuple) |
||||
|
||||
GracefulRestartCapability = _reflection.GeneratedProtocolMessageType('GracefulRestartCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _GRACEFULRESTARTCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.GracefulRestartCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(GracefulRestartCapability) |
||||
|
||||
FourOctetASNumberCapability = _reflection.GeneratedProtocolMessageType('FourOctetASNumberCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _FOUROCTETASNUMBERCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.FourOctetASNumberCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(FourOctetASNumberCapability) |
||||
|
||||
AddPathCapabilityTuple = _reflection.GeneratedProtocolMessageType('AddPathCapabilityTuple', (_message.Message,), { |
||||
'DESCRIPTOR' : _ADDPATHCAPABILITYTUPLE, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.AddPathCapabilityTuple) |
||||
}) |
||||
_sym_db.RegisterMessage(AddPathCapabilityTuple) |
||||
|
||||
AddPathCapability = _reflection.GeneratedProtocolMessageType('AddPathCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _ADDPATHCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.AddPathCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(AddPathCapability) |
||||
|
||||
EnhancedRouteRefreshCapability = _reflection.GeneratedProtocolMessageType('EnhancedRouteRefreshCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _ENHANCEDROUTEREFRESHCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.EnhancedRouteRefreshCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(EnhancedRouteRefreshCapability) |
||||
|
||||
LongLivedGracefulRestartCapabilityTuple = _reflection.GeneratedProtocolMessageType('LongLivedGracefulRestartCapabilityTuple', (_message.Message,), { |
||||
'DESCRIPTOR' : _LONGLIVEDGRACEFULRESTARTCAPABILITYTUPLE, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.LongLivedGracefulRestartCapabilityTuple) |
||||
}) |
||||
_sym_db.RegisterMessage(LongLivedGracefulRestartCapabilityTuple) |
||||
|
||||
LongLivedGracefulRestartCapability = _reflection.GeneratedProtocolMessageType('LongLivedGracefulRestartCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _LONGLIVEDGRACEFULRESTARTCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.LongLivedGracefulRestartCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(LongLivedGracefulRestartCapability) |
||||
|
||||
RouteRefreshCiscoCapability = _reflection.GeneratedProtocolMessageType('RouteRefreshCiscoCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _ROUTEREFRESHCISCOCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.RouteRefreshCiscoCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(RouteRefreshCiscoCapability) |
||||
|
||||
UnknownCapability = _reflection.GeneratedProtocolMessageType('UnknownCapability', (_message.Message,), { |
||||
'DESCRIPTOR' : _UNKNOWNCAPABILITY, |
||||
'__module__' : 'capability_pb2' |
||||
# @@protoc_insertion_point(class_scope:gobgpapi.UnknownCapability) |
||||
}) |
||||
_sym_db.RegisterMessage(UnknownCapability) |
||||
|
||||
|
||||
# @@protoc_insertion_point(module_scope) |
@ -0,0 +1,3 @@
@@ -0,0 +1,3 @@
|
||||
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! |
||||
import grpc |
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,30 @@
@@ -0,0 +1,30 @@
|
||||
# -*- coding: utf-8 -*- |
||||
# Generated by Django 1.11.25 on 2020-05-31 00:00 |
||||
from __future__ import unicode_literals |
||||
|
||||
from django.db import migrations, models |
||||
|
||||
|
||||
class Migration(migrations.Migration): |
||||
|
||||
dependencies = [ |
||||
('bgpdata', '0016_auto_20170117_0103'), |
||||
] |
||||
|
||||
operations = [ |
||||
migrations.AlterField( |
||||
model_name='confighost', |
||||
name='checkMethod', |
||||
field=models.CharField(choices=[('CMK', 'Check MK'), ('PLAIN', 'Plain'), ('GOBGP', 'GoBGP')], max_length=10), |
||||
), |
||||
migrations.AlterField( |
||||
model_name='crawllog', |
||||
name='severity', |
||||
field=models.CharField(choices=[('INFO', 'info'), ('ERROR', 'error'), ('DEBUG', 'debug'), ('WARN', 'warning')], max_length=10), |
||||
), |
||||
migrations.AlterField( |
||||
model_name='peering', |
||||
name='origin', |
||||
field=models.CharField(choices=[('path', 'BGP Path'), ('direct', 'Direct Connection')], max_length=10), |
||||
), |
||||
] |
Loading…
Reference in new issue