diff options
author | Phil Sutter <phil@nwl.cc> | 2019-10-07 12:35:21 +0200 |
---|---|---|
committer | Phil Sutter <phil@nwl.cc> | 2019-10-10 23:51:16 +0200 |
commit | 97fbef55d1e89ca73bf1e6b31ac46d756ac499f1 (patch) | |
tree | d8013a3236704adcd94576ea86e9e32d3a78766a | |
parent | 4e9782cae29034c4eefd31703ba77aee7eca2233 (diff) | |
download | platform_external_iptables-97fbef55d1e89ca73bf1e6b31ac46d756ac499f1.tar.gz platform_external_iptables-97fbef55d1e89ca73bf1e6b31ac46d756ac499f1.tar.bz2 platform_external_iptables-97fbef55d1e89ca73bf1e6b31ac46d756ac499f1.zip |
nft: Avoid nested cache fetching
Don't call fetch_table_cache() from within fetch_chain_cache() but
instead from __nft_build_cache(). Since that is the only caller of
fetch_chain_cache(), this change should not have any effect in practice.
Signed-off-by: Phil Sutter <phil@nwl.cc>
Acked-by: Pablo Neira Ayuso <pablo@netfilter.org>
-rw-r--r-- | iptables/nft.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/iptables/nft.c b/iptables/nft.c index bdc9fbc3..3228842c 100644 --- a/iptables/nft.c +++ b/iptables/nft.c @@ -1414,8 +1414,6 @@ static int fetch_chain_cache(struct nft_handle *h) struct nlmsghdr *nlh; int i, ret; - fetch_table_cache(h); - for (i = 0; i < NFT_TABLE_MAX; i++) { enum nft_table_type type = h->tables[i].type; @@ -1592,6 +1590,7 @@ static void __nft_build_cache(struct nft_handle *h) retry: mnl_genid_get(h, &genid_start); + fetch_table_cache(h); fetch_chain_cache(h); fetch_rule_cache(h); h->have_cache = true; |