OSDN Git Service

netfilter: nf_tables: don't use position attribute on rule replacement
authorFlorian Westphal <fw@strlen.de>
Sun, 4 Nov 2018 11:07:14 +0000 (12:07 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 13 Dec 2019 07:51:11 +0000 (08:51 +0100)
commit2d484087a00c267c25ad33b2e09ac6cfe48457e8
treeb575bbe03ed10b9513daa5a334b02fe3afef20dd
parent6ce317fdc212aa0cae3c0b375d6273161caad2e5
netfilter: nf_tables: don't use position attribute on rule replacement

[ Upstream commit 447750f281abef547be44fdcfe3bc4447b3115a8 ]

Its possible to set both HANDLE and POSITION when replacing a rule.
In this case, the rule at POSITION gets replaced using the
userspace-provided handle.  Rule handles are supposed to be generated
by the kernel only.

Duplicate handles should be harmless, however better disable this "feature"
by only checking for the POSITION attribute on insert operations.

Fixes: 5e94846686d0 ("netfilter: nf_tables: add insert operation")
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/netfilter/nf_tables_api.c