]> git.baikalelectronics.ru Git - kernel.git/commit
netfilter: ebtables: don't attempt to allocate 0-sized compat array
authorFlorian Westphal <fw@strlen.de>
Wed, 4 Apr 2018 19:13:30 +0000 (21:13 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 9 Apr 2018 15:05:48 +0000 (17:05 +0200)
commit447de63b7be243e2585f3eb35f5e20dcf367916c
tree02cc173cea03f00726b846f9f4e0ec559e34bdbc
parent604db2343f5561a57c35d00ffdb8e1294f7241da
netfilter: ebtables: don't attempt to allocate 0-sized compat array

Dmitry reports 32bit ebtables on 64bit kernel got broken by
a recent change that returns -EINVAL when ruleset has no entries.

ebtables however only counts user-defined chains, so for the
initial table nentries will be 0.

Don't try to allocate the compat array in this case, as no user
defined rules exist no rule will need 64bit translation.

Reported-by: Dmitry Vyukov <dvyukov@google.com>
Fixes: e236fe2567eb2 ("netfilter: compat: reject huge allocation requests")
Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/bridge/netfilter/ebtables.c