summaryrefslogtreecommitdiff
path: root/zebra/zebra_pbr.c
diff options
context:
space:
mode:
Diffstat (limited to 'zebra/zebra_pbr.c')
-rw-r--r--zebra/zebra_pbr.c32
1 files changed, 18 insertions, 14 deletions
diff --git a/zebra/zebra_pbr.c b/zebra/zebra_pbr.c
index 7f3635702f..c6abd78c0f 100644
--- a/zebra/zebra_pbr.c
+++ b/zebra/zebra_pbr.c
@@ -23,7 +23,11 @@
/* definitions */
DEFINE_MTYPE_STATIC(ZEBRA, PBR_IPTABLE_IFNAME, "PBR interface list");
-DEFINE_MTYPE(ZEBRA, PBR_OBJ, "PBR");
+DEFINE_MTYPE_STATIC(ZEBRA, PBR_RULE, "PBR rule");
+DEFINE_MTYPE_STATIC(ZEBRA, PBR_IPSET, "PBR ipset");
+DEFINE_MTYPE_STATIC(ZEBRA, PBR_IPSET_ENTRY, "PBR ipset entry");
+DEFINE_MTYPE(ZEBRA, PBR_IPTABLE, "PBR iptable");
+
/* definitions */
static const struct message ipset_type_msg[] = {
@@ -151,7 +155,7 @@ void zebra_pbr_rules_free(void *arg)
rule = (struct zebra_pbr_rule *)arg;
(void)dplane_pbr_rule_delete(rule);
- XFREE(MTYPE_PBR_OBJ, rule);
+ XFREE(MTYPE_PBR_RULE, rule);
}
uint32_t zebra_pbr_rules_hash_key(const void *arg)
@@ -274,7 +278,7 @@ void zebra_pbr_ipset_free(void *arg)
ipset = (struct zebra_pbr_ipset *)arg;
hook_call(zebra_pbr_ipset_update, 0, ipset);
- XFREE(MTYPE_PBR_OBJ, ipset);
+ XFREE(MTYPE_PBR_IPSET, ipset);
}
uint32_t zebra_pbr_ipset_hash_key(const void *arg)
@@ -318,7 +322,7 @@ void zebra_pbr_ipset_entry_free(void *arg)
hook_call(zebra_pbr_ipset_entry_update, 0, ipset);
- XFREE(MTYPE_PBR_OBJ, ipset);
+ XFREE(MTYPE_PBR_IPSET_ENTRY, ipset);
}
uint32_t zebra_pbr_ipset_entry_hash_key(const void *arg)
@@ -395,7 +399,7 @@ static void _zebra_pbr_iptable_free_all(void *arg, bool all)
}
list_delete(&iptable->interface_name_list);
}
- XFREE(MTYPE_PBR_OBJ, iptable);
+ XFREE(MTYPE_PBR_IPTABLE, iptable);
}
void zebra_pbr_iptable_free(void *arg)
@@ -477,7 +481,7 @@ static void *pbr_rule_alloc_intern(void *arg)
zpr = (struct zebra_pbr_rule *)arg;
- new = XCALLOC(MTYPE_PBR_OBJ, sizeof(*new));
+ new = XCALLOC(MTYPE_PBR_RULE, sizeof(*new));
memcpy(new, zpr, sizeof(*zpr));
@@ -491,7 +495,7 @@ static struct zebra_pbr_rule *pbr_rule_free(struct zebra_pbr_rule *hash_data,
zebra_neigh_deref(hash_data);
hash_release(zrouter.rules_hash, hash_data);
if (free_data) {
- XFREE(MTYPE_PBR_OBJ, hash_data);
+ XFREE(MTYPE_PBR_RULE, hash_data);
return NULL;
}
@@ -729,7 +733,7 @@ void zebra_pbr_add_rule(struct zebra_pbr_rule *rule)
(void)dplane_pbr_rule_update(found, new);
/* release the old hash data */
if (old)
- XFREE(MTYPE_PBR_OBJ, old);
+ XFREE(MTYPE_PBR_RULE, old);
} else {
if (IS_ZEBRA_DEBUG_PBR)
zlog_debug(
@@ -897,7 +901,7 @@ static void *pbr_ipset_alloc_intern(void *arg)
zpi = (struct zebra_pbr_ipset *)arg;
- new = XCALLOC(MTYPE_PBR_OBJ, sizeof(struct zebra_pbr_ipset));
+ new = XCALLOC(MTYPE_PBR_IPSET, sizeof(struct zebra_pbr_ipset));
memcpy(new, zpi, sizeof(*zpi));
@@ -918,7 +922,7 @@ void zebra_pbr_destroy_ipset(struct zebra_pbr_ipset *ipset)
(void)dplane_pbr_ipset_delete(ipset);
if (lookup) {
hash_release(zrouter.ipset_hash, lookup);
- XFREE(MTYPE_PBR_OBJ, lookup);
+ XFREE(MTYPE_PBR_IPSET, lookup);
} else
zlog_debug(
"%s: IPSet Entry being deleted we know nothing about",
@@ -971,7 +975,7 @@ static void *pbr_ipset_entry_alloc_intern(void *arg)
zpi = (struct zebra_pbr_ipset_entry *)arg;
- new = XCALLOC(MTYPE_PBR_OBJ, sizeof(struct zebra_pbr_ipset_entry));
+ new = XCALLOC(MTYPE_PBR_IPSET_ENTRY, sizeof(struct zebra_pbr_ipset_entry));
memcpy(new, zpi, sizeof(*zpi));
@@ -993,7 +997,7 @@ void zebra_pbr_del_ipset_entry(struct zebra_pbr_ipset_entry *ipset)
(void)dplane_pbr_ipset_entry_delete(ipset);
if (lookup) {
hash_release(zrouter.ipset_entry_hash, lookup);
- XFREE(MTYPE_PBR_OBJ, lookup);
+ XFREE(MTYPE_PBR_IPSET_ENTRY, lookup);
} else
zlog_debug("%s: IPSet being deleted we know nothing about",
__func__);
@@ -1008,7 +1012,7 @@ static void *pbr_iptable_alloc_intern(void *arg)
zpi = (struct zebra_pbr_iptable *)arg;
- new = XCALLOC(MTYPE_PBR_OBJ, sizeof(struct zebra_pbr_iptable));
+ new = XCALLOC(MTYPE_PBR_IPTABLE, sizeof(struct zebra_pbr_iptable));
/* Deep structure copy */
memcpy(new, zpi, sizeof(*zpi));
@@ -1050,7 +1054,7 @@ void zebra_pbr_del_iptable(struct zebra_pbr_iptable *iptable)
node);
}
list_delete(&iptable->interface_name_list);
- XFREE(MTYPE_PBR_OBJ, lookup);
+ XFREE(MTYPE_PBR_IPTABLE, lookup);
} else
zlog_debug("%s: IPTable being deleted we know nothing about",
__func__);