/* Delete VRF from list for this RT. */
listnode_delete(irt->vrfs, bgp_vrf);
if (!listnode_head(irt->vrfs)) {
- list_free(irt->vrfs);
+ list_delete_and_null(&irt->vrfs);
vrf_import_rt_free(irt);
}
}
hash_free(bgp->vnihash);
bgp->vnihash = NULL;
if (bgp->vrf_import_rtl)
- list_delete(bgp->vrf_import_rtl);
+ list_delete_and_null(&bgp->vrf_import_rtl);
bgp->vrf_import_rtl = NULL;
if (bgp->vrf_export_rtl)
- list_delete(bgp->vrf_export_rtl);
+ list_delete_and_null(&bgp->vrf_export_rtl);
bgp->vrf_export_rtl = NULL;
if (bgp->l2vnis)
- list_delete(bgp->l2vnis);
+ list_delete_and_null(&bgp->l2vnis);
bgp->l2vnis = NULL;
bf_free(bgp->rd_idspace);
}
struct bgp_info *ri;
int header = 1;
u_int32_t prefix_cnt, path_cnt;
+ struct bgp_table *table;
prefix_cnt = path_cnt = 0;
bgp_def = bgp_get_default();
if (!bgp_def)
return;
- for (rn = bgp_table_top(bgp_vrf->rib[AFI_L2VPN][SAFI_EVPN]); rn;
- rn = bgp_route_next(rn)) {
+ table = (struct bgp_table *)bgp_vrf->rib[AFI_L2VPN][SAFI_EVPN];
+ for (rn = bgp_table_top(table); rn; rn = bgp_route_next(rn)) {
char prefix_str[BUFSIZ];
bgp_evpn_route2str((struct prefix_evpn *)&rn->p, prefix_str,
zebra_mac_t *tmp_rmac;
if (zrmac->host_list)
- list_delete(zrmac->host_list);
+ list_delete_and_null(&zrmac->host_list);
zrmac->host_list = NULL;
tmp_rmac = hash_release(zl3vni->rmac_table, zrmac);
zebra_neigh_t *tmp_n;
if (n->host_list)
- list_delete(n->host_list);
+ list_delete_and_null(&n->host_list);
n->host_list = NULL;
tmp_n = hash_release(zl3vni->nh_table, n);