diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2018-05-28 17:00:31 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2018-05-28 17:01:14 +0200 |
commit | 9ce30532e00cc3acab473a57da98bfcfdab33da6 (patch) | |
tree | 1b455ad7be297851f942657113aeb01cb5232dae | |
parent | bb4b75aea5c002c940c2c08535f2e34f5ecf4257 (diff) |
rule: add nftnl_rule_list_insert_at()
Allow to add rule object before any existing rule.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
-rw-r--r-- | include/libnftnl/rule.h | 1 | ||||
-rw-r--r-- | src/libnftnl.map | 4 | ||||
-rw-r--r-- | src/rule.c | 6 |
3 files changed, 11 insertions, 0 deletions
diff --git a/include/libnftnl/rule.h b/include/libnftnl/rule.h index 9479943..765d2ce 100644 --- a/include/libnftnl/rule.h +++ b/include/libnftnl/rule.h @@ -84,6 +84,7 @@ void nftnl_rule_list_free(struct nftnl_rule_list *list); int nftnl_rule_list_is_empty(const struct nftnl_rule_list *list); void nftnl_rule_list_add(struct nftnl_rule *r, struct nftnl_rule_list *list); void nftnl_rule_list_add_tail(struct nftnl_rule *r, struct nftnl_rule_list *list); +void nftnl_rule_list_insert_at(struct nftnl_rule *r, struct nftnl_rule *pos); void nftnl_rule_list_del(struct nftnl_rule *r); int nftnl_rule_list_foreach(struct nftnl_rule_list *rule_list, int (*cb)(struct nftnl_rule *t, void *data), void *data); diff --git a/src/libnftnl.map b/src/libnftnl.map index a24fe9b..0d6b20c 100644 --- a/src/libnftnl.map +++ b/src/libnftnl.map @@ -342,3 +342,7 @@ LIBNFTNL_7 { nftnl_flowtable_list_foreach; } LIBNFTNL_6; + +LIBNFTNL_8 { + nftnl_rule_list_insert_at; +} LIBNFTNL_7; @@ -986,6 +986,12 @@ void nftnl_rule_list_add(struct nftnl_rule *r, struct nftnl_rule_list *list) list_add(&r->head, &list->list); } +EXPORT_SYMBOL(nftnl_rule_list_insert_at); +void nftnl_rule_list_insert_at(struct nftnl_rule *r, struct nftnl_rule *pos) +{ + list_add(&r->head, &pos->head); +} + EXPORT_SYMBOL(nftnl_rule_list_add_tail); void nftnl_rule_list_add_tail(struct nftnl_rule *r, struct nftnl_rule_list *list) { |