diff options
-rw-r--r-- | bgpd/bgp_zebra.c | 2 | ||||
-rw-r--r-- | lib/zclient.c | 1 | ||||
-rw-r--r-- | lib/zclient.h | 2 |
3 files changed, 5 insertions, 0 deletions
diff --git a/bgpd/bgp_zebra.c b/bgpd/bgp_zebra.c index baf76fb0..20feba0f 100644 --- a/bgpd/bgp_zebra.c +++ b/bgpd/bgp_zebra.c @@ -753,6 +753,7 @@ bgp_zebra_announce (struct prefix *p, struct bgp_info *info, struct bgp *bgp, sa api.flags = flags; api.type = ZEBRA_ROUTE_BGP; api.message = 0; + api.safi = safi; SET_FLAG (api.message, ZAPI_MESSAGE_NEXTHOP); api.nexthop_num = 1; api.nexthop = &nexthop; @@ -869,6 +870,7 @@ bgp_zebra_withdraw (struct prefix *p, struct bgp_info *info, safi_t safi) api.flags = flags; api.type = ZEBRA_ROUTE_BGP; api.message = 0; + api.safi = safi; SET_FLAG (api.message, ZAPI_MESSAGE_NEXTHOP); api.nexthop_num = 1; api.nexthop = &nexthop; diff --git a/lib/zclient.c b/lib/zclient.c index 0c3461e7..3521d99e 100644 --- a/lib/zclient.c +++ b/lib/zclient.c @@ -538,6 +538,7 @@ zapi_ipv6_route (u_char cmd, struct zclient *zclient, struct prefix_ipv6 *p, stream_putc (s, api->type); stream_putc (s, api->flags); stream_putc (s, api->message); + stream_putw (s, api->safi); /* Put prefix information. */ psize = PSIZE (p->prefixlen); diff --git a/lib/zclient.h b/lib/zclient.h index 8b3e71af..73389ecd 100644 --- a/lib/zclient.h +++ b/lib/zclient.h @@ -167,6 +167,8 @@ struct zapi_ipv6 u_char message; + safi_t safi; + u_char nexthop_num; struct in6_addr **nexthop; |