]> git.ipfire.org Git - thirdparty/iptables.git/commitdiff
nft: Drop nft_chain_list_find()
authorPhil Sutter <phil@nwl.cc>
Thu, 20 Dec 2018 15:09:13 +0000 (16:09 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Thu, 27 Dec 2018 19:42:00 +0000 (20:42 +0100)
Replace the function by nftnl_chain_list_lookup_byname() as provided by
libnftnl.

Signed-off-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
iptables/nft.c
iptables/nft.h

index 842ed2b805bee4b73e7c6f42c40c3b17b6925dea..883fb3db2c671f0e4d4992f268cb165a4daa5a11 100644 (file)
@@ -697,7 +697,7 @@ static void nft_chain_builtin_init(struct nft_handle *h,
        /* Initialize built-in chains if they don't exist yet */
        for (i=0; i < NF_INET_NUMHOOKS && table->chains[i].name != NULL; i++) {
 
-               c = nft_chain_list_find(list, table->chains[i].name);
+               c = nftnl_chain_list_lookup_byname(list, table->chains[i].name);
                if (c != NULL)
                        continue;
 
@@ -1699,33 +1699,6 @@ err:
        return ret == 0 ? 1 : 0;
 }
 
-struct nftnl_chain *
-nft_chain_list_find(struct nftnl_chain_list *list, const char *chain)
-{
-       struct nftnl_chain_list_iter *iter;
-       struct nftnl_chain *c;
-
-       iter = nftnl_chain_list_iter_create(list);
-       if (iter == NULL)
-               return NULL;
-
-       c = nftnl_chain_list_iter_next(iter);
-       while (c != NULL) {
-               const char *chain_name =
-                       nftnl_chain_get_str(c, NFTNL_CHAIN_NAME);
-
-               if (strcmp(chain, chain_name) != 0)
-                       goto next;
-
-               nftnl_chain_list_iter_destroy(iter);
-               return c;
-next:
-               c = nftnl_chain_list_iter_next(iter);
-       }
-       nftnl_chain_list_iter_destroy(iter);
-       return NULL;
-}
-
 static struct nftnl_chain *
 nft_chain_find(struct nft_handle *h, const char *table, const char *chain)
 {
@@ -1735,7 +1708,7 @@ nft_chain_find(struct nft_handle *h, const char *table, const char *chain)
        if (list == NULL)
                return NULL;
 
-       return nft_chain_list_find(list, chain);
+       return nftnl_chain_list_lookup_byname(list, chain);
 }
 
 bool nft_chain_exists(struct nft_handle *h,
index 6568257feddc7aaebe8bded60e14d984b55bdafa..dfdffd69342dbdb544bc8114514ea103d49bed57 100644 (file)
@@ -83,8 +83,6 @@ struct nftnl_chain;
 int nft_chain_set(struct nft_handle *h, const char *table, const char *chain, const char *policy, const struct xt_counters *counters);
 struct nftnl_chain_list *nft_chain_list_get(struct nft_handle *h,
                                            const char *table);
-struct nftnl_chain *nft_chain_list_find(struct nftnl_chain_list *list,
-                                       const char *chain);
 int nft_chain_save(struct nft_handle *h, struct nftnl_chain_list *list);
 int nft_chain_user_add(struct nft_handle *h, const char *chain, const char *table);
 int nft_chain_user_del(struct nft_handle *h, const char *chain, const char *table, bool verbose);