zclient/zserver: Support FRRouting messages format

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
This commit is contained in:
IWASE Yusuke 2017-09-05 10:13:46 +09:00 committed by FUJITA Tomonori
parent bf9b8ac588
commit 3c22bf4144
3 changed files with 10 additions and 5 deletions

View File

@ -116,15 +116,17 @@ class ZServer(object):
self.client.send_msg(
zebra.ZebraMessage(
version=self.client.zserv_ver,
body=zebra.ZebraHello(self.client.route_type)))
body=zebra.ZebraHello(
route_type=self.client.route_type,
instance=0)))
self.client.send_msg(
zebra.ZebraMessage(
version=self.client.zserv_ver,
command=zebra.ZEBRA_ROUTER_ID_ADD))
body=zebra.ZebraRouterIDAdd()))
self.client.send_msg(
zebra.ZebraMessage(
version=self.client.zserv_ver,
command=zebra.ZEBRA_INTERFACE_ADD))
body=zebra.ZebraInterfaceAdd()))
self.client.send_event_to_observers(
zclient_event.EventZServConnected(self))
@ -285,7 +287,8 @@ class ZClient(RyuApp):
distance=distance,
metric=metric,
mtu=mtu,
tag=tag))
tag=tag,
instance=0))
self.send_msg(msg)
return msg

View File

@ -90,7 +90,7 @@ def message_to_event(zclient, msg):
if not isinstance(msg, zebra.ZebraMessage):
return None
body_cls = zebra._ZebraMessageBody.lookup_command(msg.command)
body_cls = msg.get_body_class(msg.version, msg.command)
ev_cls = getattr(MOD, _event_name(body_cls), None)
if ev_cls is None:
return None

View File

@ -277,6 +277,8 @@ class ZServer(RyuApp):
ifindex=intf.ifindex,
status=intf.status,
if_flags=intf.flags,
ptm_enable=zebra.ZEBRA_IF_PTM_ENABLE_OFF,
ptm_status=zebra.ZEBRA_PTM_STATUS_UNKNOWN,
metric=intf.metric,
ifmtu=intf.ifmtu,
ifmtu6=intf.ifmtu6,