From 82e7e75db12d9ca69a15226f28c79b5548c75894 Mon Sep 17 00:00:00 2001 From: vivek Date: Wed, 4 Apr 2018 09:43:14 -0700 Subject: [PATCH] bgpd: Fix route-leak/L3VPN delete of redistributed routes Ensure that when a route redistributed into a VRF is subsequently deleted, it is properly removed from the VPN table (if exported) so that it can be removed from other VRFs and withdrawn from L3VPN peers. Ticket: CM-20345 Signed-off-by: Vivek Venkatraman --- bgpd/bgp_mplsvpn.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/bgpd/bgp_mplsvpn.c b/bgpd/bgp_mplsvpn.c index fb15f90c28..7c6a3a37f8 100644 --- a/bgpd/bgp_mplsvpn.c +++ b/bgpd/bgp_mplsvpn.c @@ -858,14 +858,9 @@ void vpn_leak_from_vrf_withdraw(struct bgp *bgp_vpn, /* to */ info_vrf->type, info_vrf->sub_type); } - if (info_vrf->type != ZEBRA_ROUTE_BGP) { - if (debug) - zlog_debug("%s: wrong type %d", __func__, - info_vrf->type); - return; - } if (info_vrf->sub_type != BGP_ROUTE_NORMAL - && info_vrf->sub_type != BGP_ROUTE_STATIC) { + && info_vrf->sub_type != BGP_ROUTE_STATIC + && info_vrf->sub_type != BGP_ROUTE_REDISTRIBUTE) { if (debug) zlog_debug("%s: wrong sub_type %d", __func__,