netfilter: nf_tables: disallow rule addition to bound chain via NFTA_RULE_CHAIN_ID
authorPablo Neira Ayuso <pablo@netfilter.org>
Sun, 23 Jul 2023 14:41:48 +0000 (16:41 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 3 Aug 2023 08:24:01 +0000 (10:24 +0200)
commit268cb07ef3ee17b5454a7c4b23376802c5b00c79
tree6669a67aad7e97caecd299e0191eb401131f8588
parent4237462a073e24f71c700f3e5929f07b6ee1bcaa
netfilter: nf_tables: disallow rule addition to bound chain via NFTA_RULE_CHAIN_ID

[ Upstream commit 0ebc1064e4874d5987722a2ddbc18f94aa53b211 ]

Bail out with EOPNOTSUPP when adding rule to bound chain via
NFTA_RULE_CHAIN_ID. The following warning splat is shown when
adding a rule to a deleted bound chain:

 WARNING: CPU: 2 PID: 13692 at net/netfilter/nf_tables_api.c:2013 nf_tables_chain_destroy+0x1f7/0x210 [nf_tables]
 CPU: 2 PID: 13692 Comm: chain-bound-rul Not tainted 6.1.39 #1
 RIP: 0010:nf_tables_chain_destroy+0x1f7/0x210 [nf_tables]

Fixes: d0e2c7de92c7 ("netfilter: nf_tables: add NFT_CHAIN_BINDING")
Reported-by: Kevin Rich <kevinrich1337@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/netfilter/nf_tables_api.c