mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-07-27 03:33:43 +00:00
bgpd: fix bgp evpn cli memory leaks.
problem:
In CLI config codeflow there are memory leaks in failure scenario
Fix:
Code changes are done to free ecommunity
Signed-off-by: Abhinay Ramesh <rabhinay@vmware.com>
(cherry picked from commit 56b895c172
)
This commit is contained in:
parent
3265f1a67c
commit
06729c106f
@ -6853,6 +6853,8 @@ DEFUN(bgp_evpn_ead_es_rt, bgp_evpn_ead_es_rt_cmd,
|
||||
if (!bgp_evpn_rt_matches_existing(bgp_mh_info->ead_es_export_rtl,
|
||||
ecomadd))
|
||||
bgp_evpn_mh_config_ead_export_rt(bgp, ecomadd, false);
|
||||
else
|
||||
ecommunity_free(&ecomadd);
|
||||
|
||||
return CMD_SUCCESS;
|
||||
}
|
||||
@ -6890,6 +6892,7 @@ DEFUN(no_bgp_evpn_ead_es_rt, no_bgp_evpn_ead_es_rt_cmd,
|
||||
}
|
||||
bgp_evpn_mh_config_ead_export_rt(bgp, ecomdel, true);
|
||||
|
||||
ecommunity_free(&ecomdel);
|
||||
return CMD_SUCCESS;
|
||||
}
|
||||
|
||||
@ -6941,6 +6944,8 @@ DEFUN (bgp_evpn_vni_rt,
|
||||
/* Do nothing if we already have this import route-target */
|
||||
if (!bgp_evpn_rt_matches_existing(vpn->import_rtl, ecomadd))
|
||||
evpn_configure_import_rt(bgp, vpn, ecomadd);
|
||||
else
|
||||
ecommunity_free(&ecomadd);
|
||||
}
|
||||
|
||||
/* Add/update the export route-target */
|
||||
@ -6957,6 +6962,8 @@ DEFUN (bgp_evpn_vni_rt,
|
||||
/* Do nothing if we already have this export route-target */
|
||||
if (!bgp_evpn_rt_matches_existing(vpn->export_rtl, ecomadd))
|
||||
evpn_configure_export_rt(bgp, vpn, ecomadd);
|
||||
else
|
||||
ecommunity_free(&ecomadd);
|
||||
}
|
||||
|
||||
return CMD_SUCCESS;
|
||||
@ -7064,6 +7071,7 @@ DEFUN (no_bgp_evpn_vni_rt,
|
||||
}
|
||||
}
|
||||
|
||||
ecommunity_free(&ecomdel);
|
||||
return CMD_SUCCESS;
|
||||
}
|
||||
|
||||
|
@ -8567,6 +8567,8 @@ DEFPY (neighbor_soo,
|
||||
ecommunity_free(&peer->soo[afi][safi]);
|
||||
peer->soo[afi][safi] = ecomm_soo;
|
||||
peer_af_flag_unset(peer, afi, safi, PEER_FLAG_SOO);
|
||||
} else {
|
||||
ecommunity_free(&ecomm_soo);
|
||||
}
|
||||
|
||||
return bgp_vty_return(vty,
|
||||
|
Loading…
Reference in New Issue
Block a user