}
void nexthop_group_delete(struct nexthop_group **nhg)
-{
- XFREE(MTYPE_NEXTHOP_GROUP, *nhg);
-}
-
-void nexthop_group_free_delete(struct nexthop_group **nhg)
{
if ((*nhg)->nexthop)
nexthops_free((*nhg)->nexthop);
- nexthop_group_delete(nhg);
+
+ XFREE(MTYPE_NEXTHOP_GROUP, *nhg);
}
/* Add nexthop to the end of a nexthop list. */
struct nexthop_group *nexthop_group_new(void);
void nexthop_group_delete(struct nexthop_group **nhg);
-void nexthop_group_free_delete(struct nexthop_group **nhg);
void nexthop_group_copy(struct nexthop_group *to,
struct nexthop_group *from);
hash_release(pbr_nhg_hash, pnhgc);
- _nexthop_del(pbrms->nhg, nh);
- nexthop_free(nh);
nexthop_group_delete(&pbrms->nhg);
XFREE(MTYPE_TMP, pbrms->internal_nhg_name);
}
EC_ZEBRA_NEXTHOP_CREATION_FAILED,
"%s: Nexthops Specified: %d but we failed to properly create one",
__PRETTY_FUNCTION__, api.nexthop_num);
- nexthops_free(re->ng->nexthop);
nexthop_group_delete(&re->ng);
XFREE(MTYPE_RE, re);
return;
flog_warn(EC_ZEBRA_RX_SRCDEST_WRONG_AFI,
"%s: Received SRC Prefix but afi is not v6",
__PRETTY_FUNCTION__);
- nexthops_free(re->ng->nexthop);
nexthop_group_delete(&re->ng);
XFREE(MTYPE_RE, re);
return;
if (zebra_nhg_process_grp(nhg, &nhg_depends,
nhg_ctx_get_grp(ctx), count)) {
depends_decrement_free(&nhg_depends);
- nexthop_group_free_delete(&nhg);
+ nexthop_group_delete(&nhg);
return -ENOENT;
}
depends_decrement_free(&nhg_depends);
/* These got copied over in zebra_nhg_alloc() */
- nexthop_group_free_delete(&nhg);
+ nexthop_group_delete(&nhg);
} else
nhe = zebra_nhg_find_nexthop(id, nhg_ctx_get_nh(ctx), afi,
type);
void zebra_nhg_free_members(struct nhg_hash_entry *nhe)
{
- nexthop_group_free_delete(&nhe->nhg);
+ nexthop_group_delete(&nhe->nhg);
/* Decrement to remove connection ref */
nhg_connected_tree_decrement_ref(&nhe->nhg_depends);
nhg_connected_tree_free(&nhe->nhg_depends);
if (nhe)
zebra_nhg_decrement_ref(nhe);
} else if (re->ng)
- nexthop_group_free_delete(&re->ng);
+ nexthop_group_delete(&re->ng);
nexthops_free(re->fib_ng.nexthop);
table = zebra_vrf_table_with_table_id(afi, safi, re->vrf_id, re->table);
if (!table) {
if (re->ng)
- nexthop_group_free_delete(&re->ng);
+ nexthop_group_delete(&re->ng);
XFREE(MTYPE_RE, re);
return 0;
}
* The nexthops got copied over into an nhe,
* so free them now.
*/
- nexthop_group_free_delete(&re->ng);
+ nexthop_group_delete(&re->ng);
if (!nhe) {
char buf[PREFIX_STRLEN] = "";
return;
/* free RE and nexthops */
- nexthops_free(re->ng->nexthop);
nexthop_group_delete(&re->ng);
XFREE(MTYPE_RE, re);
}