]> git.ipfire.org Git - thirdparty/libnftnl.git/commitdiff
rule: add nftnl_rule_list_insert_at()
authorPablo Neira Ayuso <pablo@netfilter.org>
Mon, 28 May 2018 15:00:31 +0000 (17:00 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 28 May 2018 15:01:14 +0000 (17:01 +0200)
Allow to add rule object before any existing rule.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/libnftnl/rule.h
src/libnftnl.map
src/rule.c

index 947994364bd8bfa67df23ea623dbabe6973ffb8f..765d2ce6e4efccaed77765c46ff8d48128a1ffc4 100644 (file)
@@ -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);
 
index a24fe9b4dae98f17165254cdbed8b270b3fd6d79..0d6b20c8f14b0af78c5fe5c5126fb5783109b3db 100644 (file)
@@ -342,3 +342,7 @@ LIBNFTNL_7 {
   nftnl_flowtable_list_foreach;
 
 } LIBNFTNL_6;
+
+LIBNFTNL_8 {
+  nftnl_rule_list_insert_at;
+} LIBNFTNL_7;
index e4cba1f7a352ebe84d8aeaf1227b8b2bef1e143b..146b06ca91ef763a89f4cac760fd558ddf3fe877 100644 (file)
@@ -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)
 {