From: Pablo Neira Ayuso Date: Mon, 25 Oct 2021 21:34:07 +0000 (+0200) Subject: cache: honor filter in set listing commands X-Git-Tag: v1.0.1~36 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8ad4003f8b790ffefb44005254451d91ac4221b6;p=thirdparty%2Fnftables.git cache: honor filter in set listing commands Fetch table, set and set elements only for set listing commands, e.g. nft list set inet filter ipv4_bogons. Fixes: 635ee1cad8aa ("cache: filter out sets and maps that are not requested") Signed-off-by: Pablo Neira Ayuso --- diff --git a/src/cache.c b/src/cache.c index 3cbf99e8..691e8131 100644 --- a/src/cache.c +++ b/src/cache.c @@ -146,6 +146,8 @@ static unsigned int evaluate_cache_list(struct nft_ctx *nft, struct cmd *cmd, } if (nft_output_terse(&nft->output)) flags |= (NFT_CACHE_FULL & ~NFT_CACHE_SETELEM); + else if (filter->table && filter->set) + flags |= NFT_CACHE_TABLE | NFT_CACHE_SET | NFT_CACHE_SETELEM; else flags |= NFT_CACHE_FULL; break;