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 <iryzhov@nfware.com>
(cherry picked from commit 606c3f9fb2)
This commit is contained in:
Igor Ryzhov 2022-02-10 01:23:41 +03:00 committed by mergify-bot
parent 2dc64494da
commit 955cc29fb6

View File

@ -972,9 +972,6 @@ void vnc_direct_bgp_add_nve(struct bgp *bgp, struct rfapi_descriptor *rfd)
import_table = rfg->rfapi_import_table; 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) { if (afi == AFI_IP || afi == AFI_IP6) {
rt = import_table->imported_vpn[afi]; rt = import_table->imported_vpn[afi];
} else { } else {
@ -983,6 +980,9 @@ void vnc_direct_bgp_add_nve(struct bgp *bgp, struct rfapi_descriptor *rfd)
return; 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 * Walk the NVE-Group's VNC Import table
*/ */