diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 5ec122d2a9..8201e90cc3 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -5135,7 +5135,8 @@ void bgp_update(struct peer *peer, const struct prefix *p, uint32_t addpath_id, * attr->evpn_overlay with evpn directly. Instead memcpy * evpn to new_atr.evpn_overlay before it is interned. */ - if (soft_reconfig && evpn && afi == AFI_L2VPN) { + if (evpn && afi == AFI_L2VPN && + (soft_reconfig || !CHECK_FLAG(peer->af_flags[afi][safi], PEER_FLAG_SOFT_RECONFIG))) { bgp_attr_set_evpn_overlay(&new_attr, evpn); p_evpn = NULL; } diff --git a/tests/topotests/bgp_evpn_route_map_set/r2/frr.conf b/tests/topotests/bgp_evpn_route_map_set/r2/frr.conf index 754b696bfd..2a15998420 100644 --- a/tests/topotests/bgp_evpn_route_map_set/r2/frr.conf +++ b/tests/topotests/bgp_evpn_route_map_set/r2/frr.conf @@ -12,9 +12,6 @@ router bgp 64000 ! address-family l2vpn evpn neighbor 10.0.0.2 activate - ! workaround for now, as frr drops some evpn attributes like gw-ip if soft - ! reconf is not enabled for inbound routes - neighbor 10.0.0.2 soft-reconfiguration inbound ! advertise-all-vni exit-address-family