mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-08 07:37:29 +00:00
zebra: Add code to create/remove nexthop groups
Add some code to create/remove nexthop groups. Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
This commit is contained in:
parent
4e49c8b8a7
commit
22bcedb231
@ -2400,6 +2400,7 @@ static void rib_addnode(struct route_node *rn,
|
|||||||
void rib_unlink(struct route_node *rn, struct route_entry *re)
|
void rib_unlink(struct route_node *rn, struct route_entry *re)
|
||||||
{
|
{
|
||||||
rib_dest_t *dest;
|
rib_dest_t *dest;
|
||||||
|
rib_table_info_t *info;
|
||||||
|
|
||||||
assert(rn && re);
|
assert(rn && re);
|
||||||
|
|
||||||
@ -2414,6 +2415,9 @@ void rib_unlink(struct route_node *rn, struct route_entry *re)
|
|||||||
if (dest->selected_fib == re)
|
if (dest->selected_fib == re)
|
||||||
dest->selected_fib = NULL;
|
dest->selected_fib = NULL;
|
||||||
|
|
||||||
|
info = srcdest_rnode_table_info(rn);
|
||||||
|
zebra_nhg_release(info->afi, re);
|
||||||
|
|
||||||
nexthops_free(re->ng.nexthop);
|
nexthops_free(re->ng.nexthop);
|
||||||
nexthops_free(re->fib_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)
|
if (src_p)
|
||||||
apply_mask_ipv6(src_p);
|
apply_mask_ipv6(src_p);
|
||||||
|
|
||||||
|
zebra_nhg_find(afi, &re->ng, re);
|
||||||
/* Set default distance by route type. */
|
/* Set default distance by route type. */
|
||||||
if (re->distance == 0)
|
if (re->distance == 0)
|
||||||
re->distance = route_distance(re->type);
|
re->distance = route_distance(re->type);
|
||||||
|
Loading…
Reference in New Issue
Block a user