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 <vivek@cumulusnetworks.com>
This commit is contained in:
vivek 2018-04-04 09:43:14 -07:00 committed by Donald Sharp
parent cc5a6ddd06
commit 82e7e75db1

View File

@ -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__,