From f491b540791dd48340f139f16381a1cfbe262049 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Sun, 10 Sep 2023 09:12:26 -0400 Subject: [PATCH] bgpd: delete_evpn_route ensure that dest is not freed before usage There exist two spots in this function where the dest could be freed, but is not due to locking, but coverity thinks it might so let's make the function happy. Signed-off-by: Donald Sharp --- bgpd/bgp_evpn.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/bgpd/bgp_evpn.c b/bgpd/bgp_evpn.c index ff931e1f07..6cc1dd710d 100644 --- a/bgpd/bgp_evpn.c +++ b/bgpd/bgp_evpn.c @@ -2330,9 +2330,13 @@ static int delete_evpn_route(struct bgp *bgp, struct bgpevpn *vpn, */ delete_evpn_route_entry(bgp, afi, safi, dest, &pi); if (pi) { - bgp_path_info_reap(dest, pi); + dest = bgp_path_info_reap(dest, pi); + assert(dest); evpn_route_select_install(bgp, vpn, dest); } + + /* dest should still exist due to locking make coverity happy */ + assert(dest); bgp_dest_unlock_node(dest); return 0; -- 2.39.5