summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilippe Guibert <philippe.guibert@6wind.com>2019-01-28 17:54:50 +0100
committerPhilippe Guibert <philippe.guibert@6wind.com>2019-01-29 08:54:22 +0100
commitdfd17258d2ad8c5e217909e3f17d52f76f6361df (patch)
tree5addb12c32830099372b21cda901ec6ae9ad73c3
parentb539a22f5a58016c9aee82a835a37c31382b50ba (diff)
bgpd: detach vrf labels allocated, when removing bgp instance
bgp instance is disabling the label allocated to reach vrf entity. previously, only vrf disabling was removing the label. now, when bgp leaves, bgp instance also frees the label used. PR=62306 Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com> Acked-by: Julien Floret <julien.floret@6wind.com>
-rw-r--r--bgpd/bgpd.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c
index 0b6e05fff6..d3dd587096 100644
--- a/bgpd/bgpd.c
+++ b/bgpd/bgpd.c
@@ -3252,6 +3252,10 @@ int bgp_delete(struct bgp *bgp)
/* unmap from RT list */
bgp_evpn_vrf_delete(bgp);
+ /* unmap bgp vrf label */
+ vpn_leak_zebra_vrf_label_withdraw(bgp, AFI_IP);
+ vpn_leak_zebra_vrf_label_withdraw(bgp, AFI_IP6);
+
/* Stop timers. */
if (bgp->t_rmap_def_originate_eval) {
BGP_TIMER_OFF(bgp->t_rmap_def_originate_eval);