summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/libnftables/chain.h2
-rw-r--r--include/libnftables/rule.h1
-rw-r--r--include/libnftables/set.h1
-rw-r--r--include/libnftables/table.h1
-rw-r--r--src/libnftables.map3
-rw-r--r--src/rule.c6
-rw-r--r--src/set.c6
-rw-r--r--src/table.c6
8 files changed, 25 insertions, 1 deletions
diff --git a/include/libnftables/chain.h b/include/libnftables/chain.h
index 52c39db..d3086ea 100644
--- a/include/libnftables/chain.h
+++ b/include/libnftables/chain.h
@@ -71,7 +71,7 @@ int nft_chain_list_foreach(struct nft_chain_list *chain_list, int (*cb)(struct n
void nft_chain_list_add(struct nft_chain *r, struct nft_chain_list *list);
void nft_chain_list_add_tail(struct nft_chain *r, struct nft_chain_list *list);
-void nft_chain_list_del(struct nft_chain *r);
+void nft_chain_list_del(struct nft_chain *c);
struct nft_chain_list_iter;
diff --git a/include/libnftables/rule.h b/include/libnftables/rule.h
index af9a0f3..9fba9c8 100644
--- a/include/libnftables/rule.h
+++ b/include/libnftables/rule.h
@@ -78,6 +78,7 @@ void nft_rule_list_free(struct nft_rule_list *list);
int nft_rule_list_is_empty(struct nft_rule_list *list);
void nft_rule_list_add(struct nft_rule *r, struct nft_rule_list *list);
void nft_rule_list_add_tail(struct nft_rule *r, struct nft_rule_list *list);
+void nft_rule_list_del(struct nft_rule *r);
int nft_rule_list_foreach(struct nft_rule_list *rule_list, int (*cb)(struct nft_rule *t, void *data), void *data);
struct nft_rule_list_iter;
diff --git a/include/libnftables/set.h b/include/libnftables/set.h
index 9526ae1..4c95cf9 100644
--- a/include/libnftables/set.h
+++ b/include/libnftables/set.h
@@ -44,6 +44,7 @@ void nft_set_list_free(struct nft_set_list *list);
int nft_set_list_is_empty(struct nft_set_list *list);
void nft_set_list_add(struct nft_set *s, struct nft_set_list *list);
void nft_set_list_add_tail(struct nft_set *s, struct nft_set_list *list);
+void nft_set_list_del(struct nft_set *s);
int nft_set_list_foreach(struct nft_set_list *set_list, int (*cb)(struct nft_set *t, void *data), void *data);
struct nft_set_list_iter;
diff --git a/include/libnftables/table.h b/include/libnftables/table.h
index 1a015ca..66574cf 100644
--- a/include/libnftables/table.h
+++ b/include/libnftables/table.h
@@ -59,6 +59,7 @@ int nft_table_list_foreach(struct nft_table_list *table_list, int (*cb)(struct n
void nft_table_list_add(struct nft_table *r, struct nft_table_list *list);
void nft_table_list_add_tail(struct nft_table *r, struct nft_table_list *list);
+void nft_table_list_del(struct nft_table *r);
struct nft_table_list_iter;
diff --git a/src/libnftables.map b/src/libnftables.map
index c4a1c26..963c03e 100644
--- a/src/libnftables.map
+++ b/src/libnftables.map
@@ -21,6 +21,7 @@ global:
nft_table_list_foreach;
nft_table_list_add;
nft_table_list_add_tail;
+ nft_table_list_del;
nft_table_list_iter_create;
nft_table_list_iter_next;
nft_table_list_iter_destroy;
@@ -103,6 +104,7 @@ global:
nft_rule_list_is_empty;
nft_rule_list_add;
nft_rule_list_add_tail;
+ nft_rule_list_del;
nft_rule_list_foreach;
nft_rule_list_iter_create;
nft_rule_list_iter_cur;
@@ -129,6 +131,7 @@ global:
nft_set_list_free;
nft_set_list_add;
nft_set_list_add_tail;
+ nft_set_list_del;
nft_set_list_is_empty;
nft_set_list_foreach;
diff --git a/src/rule.c b/src/rule.c
index 555e724..2e7be6f 100644
--- a/src/rule.c
+++ b/src/rule.c
@@ -948,6 +948,12 @@ void nft_rule_list_add_tail(struct nft_rule *r, struct nft_rule_list *list)
}
EXPORT_SYMBOL(nft_rule_list_add_tail);
+void nft_rule_list_del(struct nft_rule *r)
+{
+ list_del(&r->head);
+}
+EXPORT_SYMBOL(nft_rule_list_del);
+
int nft_rule_list_foreach(struct nft_rule_list *rule_list,
int (*cb)(struct nft_rule *r, void *data),
void *data)
diff --git a/src/set.c b/src/set.c
index 98f357c..530776d 100644
--- a/src/set.c
+++ b/src/set.c
@@ -720,6 +720,12 @@ void nft_set_list_add_tail(struct nft_set *s, struct nft_set_list *list)
}
EXPORT_SYMBOL(nft_set_list_add_tail);
+void nft_set_list_del(struct nft_set *s)
+{
+ list_del(&s->head);
+}
+EXPORT_SYMBOL(nft_set_list_del);
+
int nft_set_list_foreach(struct nft_set_list *set_list,
int (*cb)(struct nft_set *t, void *data), void *data)
{
diff --git a/src/table.c b/src/table.c
index c8fff1e..c095053 100644
--- a/src/table.c
+++ b/src/table.c
@@ -436,6 +436,12 @@ void nft_table_list_add_tail(struct nft_table *r, struct nft_table_list *list)
}
EXPORT_SYMBOL(nft_table_list_add_tail);
+void nft_table_list_del(struct nft_table *t)
+{
+ list_del(&t->head);
+}
+EXPORT_SYMBOL(nft_table_list_del);
+
int nft_table_list_foreach(struct nft_table_list *table_list,
int (*cb)(struct nft_table *t, void *data),
void *data)