]> git.ipfire.org Git - thirdparty/iptables.git/commitdiff
nft: don't skip table addition from ERESTART
authorPablo Neira Ayuso <pablo@netfilter.org>
Mon, 20 May 2019 14:03:33 +0000 (16:03 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 20 May 2019 18:58:41 +0000 (20:58 +0200)
I don't find a scenario that trigger this case.

Fixes: 58d7de0181f6 ("xtables: handle concurrent ruleset modifications")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
iptables/nft.c

index b9268b63c86d71d61622cd08f8d559933e3a14a8..43b9153c2d58abbcb332a0ce956b169672fe9105 100644 (file)
@@ -2794,15 +2794,6 @@ static void nft_refresh_transaction(struct nft_handle *h)
                        else if (!n->skip && !exists)
                                n->skip = 1;
                        break;
-               case NFT_COMPAT_TABLE_ADD:
-                       tablename = nftnl_table_get_str(n->table, NFTNL_TABLE_NAME);
-                       if (!tablename)
-                               continue;
-
-                       exists = nft_table_find(h, tablename);
-                       if (n->skip && !exists)
-                               n->skip = 0;
-                       break;
                case NFT_COMPAT_CHAIN_USER_ADD:
                        tablename = nftnl_chain_get_str(n->chain, NFTNL_CHAIN_TABLE);
                        if (!tablename)
@@ -2822,6 +2813,7 @@ static void nft_refresh_transaction(struct nft_handle *h)
                                n->skip = 0;
                        }
                        break;
+               case NFT_COMPAT_TABLE_ADD:
                case NFT_COMPAT_CHAIN_ADD:
                case NFT_COMPAT_CHAIN_ZERO:
                case NFT_COMPAT_CHAIN_USER_DEL: