netfilter: ebtables: CONFIG_COMPAT: reject trailing data after last rule
authorFlorian Westphal <fw@strlen.de>
Sun, 5 May 2019 16:47:33 +0000 (18:47 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 29 Jan 2020 09:24:24 +0000 (10:24 +0100)
commit82366de36f1f468daa0856da5f424d50e9b33d5a
tree6db5d86b8a8f822d8048072afe00d4f3e83dbf91
parent1cec2f8fd84c0799c5d235f299025d2b2d17805a
netfilter: ebtables: CONFIG_COMPAT: reject trailing data after last rule

[ Upstream commit 680f6af5337c98d116e4f127cea7845339dba8da ]

If userspace provides a rule blob with trailing data after last target,
we trigger a splat, then convert ruleset to 64bit format (with trailing
data), then pass that to do_replace_finish() which then returns -EINVAL.

Erroring out right away avoids the splat plus unneeded translation and
error unwind.

Fixes: 81e675c227ec ("netfilter: ebtables: add CONFIG_COMPAT support")
Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
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/bridge/netfilter/ebtables.c