Browse Source

bgpd: IPv6 MP-BGP Routes addition and deletion

This patch contains the following:
1. Addition of IPv6 SAFI_MULTICAST BGP routes into the BGP Multicast RIB.
2. Deletion of IPv6 SAFI_MULTICAST BGP routes from the BGP Multicast RIB.
G.Balaji 9 years ago
parent
commit
c7ec179a95
3 changed files with 5 additions and 0 deletions
  1. 2 0
      bgpd/bgp_zebra.c
  2. 1 0
      lib/zclient.c
  3. 2 0
      lib/zclient.h

+ 2 - 0
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;

+ 1 - 0
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);

+ 2 - 0
lib/zclient.h

@@ -167,6 +167,8 @@ struct zapi_ipv6
 
   u_char message;
 
+  safi_t safi;
+
   u_char nexthop_num;
   struct in6_addr **nexthop;