zebra: clean zevpn references in the access bd database when the VNI is deleted

When an VNI was deleted as a part of FRR/zebra shutdown the zevpn entry
was being freed without removing its reference in the access vlan
entry (i.e. without clearing the VLAN->VNI mapping) used by MH.

Ticket: CM-31197

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
This commit is contained in:
Anuradha Karuppiah 2020-09-03 06:50:26 -07:00 committed by Anuradha Karuppiah
parent 7c0e4dc659
commit 963b0c55fd

View File

@ -1046,6 +1046,9 @@ int zebra_evpn_del(zebra_evpn_t *zevpn)
hash_free(zevpn->mac_table);
zevpn->mac_table = NULL;
/* Remove references to the zevpn in the MH databases */
if (zevpn->vxlan_if)
zebra_evpn_vxl_evpn_set(zevpn->vxlan_if->info, zevpn, false);
zebra_evpn_es_evi_cleanup(zevpn);
/* Free the EVPN hash entry and allocated memory. */