From 22bcedb231390df39c327eba1f12f1da50da0bf2 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Fri, 25 Jan 2019 20:11:21 -0500 Subject: [PATCH] zebra: Add code to create/remove nexthop groups Add some code to create/remove nexthop groups. Signed-off-by: Stephen Worley --- zebra/zebra_rib.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c index c2fa33f57d..f385a2d752 100644 --- a/zebra/zebra_rib.c +++ b/zebra/zebra_rib.c @@ -2400,6 +2400,7 @@ static void rib_addnode(struct route_node *rn, void rib_unlink(struct route_node *rn, struct route_entry *re) { rib_dest_t *dest; + rib_table_info_t *info; assert(rn && re); @@ -2414,6 +2415,9 @@ void rib_unlink(struct route_node *rn, struct route_entry *re) if (dest->selected_fib == re) dest->selected_fib = NULL; + info = srcdest_rnode_table_info(rn); + zebra_nhg_release(info->afi, re); + nexthops_free(re->ng.nexthop); nexthops_free(re->fib_ng.nexthop); @@ -2655,6 +2659,7 @@ int rib_add_multipath(afi_t afi, safi_t safi, struct prefix *p, if (src_p) apply_mask_ipv6(src_p); + zebra_nhg_find(afi, &re->ng, re); /* Set default distance by route type. */ if (re->distance == 0) re->distance = route_distance(re->type); -- 2.39.5