diff options
-rw-r--r-- | bgpd/bgp_route.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 1db68e719..29953cae0 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -2835,6 +2835,17 @@ bgp_update (struct peer *peer, struct prefix *p, u_int32_t addpath_id, bgp_unlock_node (rn); +#if ENABLE_BGP_VNC + /* + * Filtered update is treated as an implicit withdrawal (see bgp_rib_remove() + * a few lines above) + */ + if ((SAFI_MPLS_VPN == safi) || (SAFI_ENCAP == safi)) + { + rfapiProcessWithdraw(peer, NULL, p, prd, NULL, afi, safi, type, 0); + } +#endif + return 0; } |