mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-11-01 12:47:16 +00:00
bgpd: Handle encap attributes the same way as others using setters/getters
To be consistent and error-safe. Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
This commit is contained in:
parent
09b4537755
commit
312b8c02a6
@ -333,6 +333,10 @@ static void encap_unintern(struct bgp_attr_encap_subtlv **encapp,
|
||||
encap_subtlv_type type)
|
||||
{
|
||||
struct bgp_attr_encap_subtlv *encap = *encapp;
|
||||
|
||||
if (!*encapp)
|
||||
return;
|
||||
|
||||
if (encap->refcnt)
|
||||
encap->refcnt--;
|
||||
|
||||
@ -1219,17 +1223,14 @@ void bgp_attr_unintern_sub(struct attr *attr)
|
||||
transit_unintern(&transit);
|
||||
bgp_attr_set_transit(attr, NULL);
|
||||
|
||||
if (attr->encap_subtlvs)
|
||||
encap_unintern(&attr->encap_subtlvs, ENCAP_SUBTLV_TYPE);
|
||||
encap_unintern(&attr->encap_subtlvs, ENCAP_SUBTLV_TYPE);
|
||||
|
||||
#ifdef ENABLE_BGP_VNC
|
||||
struct bgp_attr_encap_subtlv *vnc_subtlvs =
|
||||
bgp_attr_get_vnc_subtlvs(attr);
|
||||
|
||||
if (vnc_subtlvs) {
|
||||
encap_unintern(&vnc_subtlvs, VNC_SUBTLV_TYPE);
|
||||
bgp_attr_set_vnc_subtlvs(attr, vnc_subtlvs);
|
||||
}
|
||||
encap_unintern(&vnc_subtlvs, VNC_SUBTLV_TYPE);
|
||||
bgp_attr_set_vnc_subtlvs(attr, NULL);
|
||||
#endif
|
||||
|
||||
if (attr->srv6_l3vpn)
|
||||
|
Loading…
Reference in New Issue
Block a user