From 955cc29fb604e456184efaf73b6719ce66c614ee Mon Sep 17 00:00:00 2001 From: Igor Ryzhov Date: Thu, 10 Feb 2022 01:23:41 +0300 Subject: [PATCH] bgpd: fix aspath memleak on error in vnc_direct_bgp_add_nve bgp_attr_default_set creates a new empty aspath. If family error happens, this aspath is not freed. Move attr initialization after we checked the family. Signed-off-by: Igor Ryzhov (cherry picked from commit 606c3f9fb2e164ea3f2fe87b46f99c4be44104bc) --- bgpd/rfapi/vnc_export_bgp.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bgpd/rfapi/vnc_export_bgp.c b/bgpd/rfapi/vnc_export_bgp.c index 68dc5a4f60..534ddcc64b 100644 --- a/bgpd/rfapi/vnc_export_bgp.c +++ b/bgpd/rfapi/vnc_export_bgp.c @@ -972,9 +972,6 @@ void vnc_direct_bgp_add_nve(struct bgp *bgp, struct rfapi_descriptor *rfd) import_table = rfg->rfapi_import_table; - bgp_attr_default_set(&attr, BGP_ORIGIN_INCOMPLETE); - /* TBD set some configured med, see add_vnc_route() */ - if (afi == AFI_IP || afi == AFI_IP6) { rt = import_table->imported_vpn[afi]; } else { @@ -983,6 +980,9 @@ void vnc_direct_bgp_add_nve(struct bgp *bgp, struct rfapi_descriptor *rfd) return; } + bgp_attr_default_set(&attr, BGP_ORIGIN_INCOMPLETE); + /* TBD set some configured med, see add_vnc_route() */ + /* * Walk the NVE-Group's VNC Import table */