From 5ee65f6f3e6e6e9911753cd3c8d70a39b649bed4 Mon Sep 17 00:00:00 2001 From: vivek Date: Fri, 8 Dec 2017 16:36:27 -0800 Subject: [PATCH] bgpd: Fix attribute handling for type-5 routes When a EVPN type-5 route is formed by using the source IP route's AS-path, the AS-path is not locally generated and should not be "uninterned" (i.e., have its reference count incorrectly updated). An incorrect update of the reference count can lead to asserts or crashes at a later stage. Signed-off-by: Vivek Venkatraman Ticket: CM-19121 Reviewed By: CCR-7028 Testing Done: 1. Manual testing by Vivek and Anitha 2. No automation run since this area has no coverage yet --- bgpd/bgp_evpn.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bgpd/bgp_evpn.c b/bgpd/bgp_evpn.c index 70500f39d4..4e40daadb6 100644 --- a/bgpd/bgp_evpn.c +++ b/bgpd/bgp_evpn.c @@ -1120,7 +1120,8 @@ static int update_evpn_type5_route(struct bgp *bgp_vrf, } /* uninten temporary */ - aspath_unintern(&attr.aspath); + if (!src_attr) + aspath_unintern(&attr.aspath); return 0; }