Re: [lvc-project] [PATCH] netfilter: ebtables: remove unnecessary NULL check

From: Florian Westphal
Date: Wed Jun 21 2023 - 06:48:16 EST


Igor A. Artemiev <Igor.A.Artemiev@xxxxxxx> wrote:
> On 6/20/23 19:38, Florian Westphal wrote:
> > Igor Artemiev <Igor.A.Artemiev@xxxxxxx> wrote:
> > > In ebt_do_table() 'private->chainstack' cannot be NULL
> > > and the 'cs' pointer is dereferenced below, so it does not make
> > > sense to compare 'private->chainstack' with NULL.
> > ? Why do you think that?
> >
> The 'cs' pointer is dereferenced below without checking, as it is assumed to
> always be initialized with 'private->chainstack[smp_processor_id()]'.

No, its not. The dereferencing is conditional, as is the allocation
of the chainstack.

No user defined chains, no chain stack.

With this change, "ebtables-legacy -A INPUT" causes kernel panic.