diff options
-rw-r--r-- | include/libnftnl/chain.h | 1 | ||||
-rw-r--r-- | src/chain.c | 6 | ||||
-rw-r--r-- | src/libnftnl.map | 1 |
3 files changed, 8 insertions, 0 deletions
diff --git a/include/libnftnl/chain.h b/include/libnftnl/chain.h index 64e10e9..163a824 100644 --- a/include/libnftnl/chain.h +++ b/include/libnftnl/chain.h @@ -56,6 +56,7 @@ int32_t nftnl_chain_get_s32(const struct nftnl_chain *c, uint16_t attr); uint64_t nftnl_chain_get_u64(const struct nftnl_chain *c, uint16_t attr); void nftnl_chain_rule_add(struct nftnl_rule *rule, struct nftnl_chain *c); +void nftnl_chain_rule_del(struct nftnl_rule *rule); void nftnl_chain_rule_add_tail(struct nftnl_rule *rule, struct nftnl_chain *c); void nftnl_chain_rule_insert_at(struct nftnl_rule *rule, struct nftnl_rule *pos); diff --git a/src/chain.c b/src/chain.c index 03eeb65..5f8eb5c 100644 --- a/src/chain.c +++ b/src/chain.c @@ -429,6 +429,12 @@ void nftnl_chain_rule_add(struct nftnl_rule *rule, struct nftnl_chain *c) list_add(&rule->head, &c->rule_list); } +EXPORT_SYMBOL(nftnl_chain_rule_del); +void nftnl_chain_rule_del(struct nftnl_rule *r) +{ + list_del(&r->head); +} + EXPORT_SYMBOL(nftnl_chain_rule_add_tail); void nftnl_chain_rule_add_tail(struct nftnl_rule *rule, struct nftnl_chain *c) { diff --git a/src/libnftnl.map b/src/libnftnl.map index 0d3be32..0dad6a2 100644 --- a/src/libnftnl.map +++ b/src/libnftnl.map @@ -340,6 +340,7 @@ local: *; LIBNFTNL_12 { nftnl_chain_rule_add; nftnl_chain_rule_add_tail; + nftnl_chain_rule_del; nftnl_chain_rule_insert_at; nftnl_rule_foreach; nftnl_rule_iter_create; |