Re: [PATCH v5 1/1] net: br_netfiler_hooks: Drops IPv6 packets if IPv6 module is not loaded

From: Florian Westphal
Date: Sat Aug 31 2019 - 04:39:09 EST


Leonardo Bras <leonardo@xxxxxxxxxxxxx> wrote:
> A kernel panic can happen if a host has disabled IPv6 on boot and have to
> process guest packets (coming from a bridge) using it's ip6tables.
>
> IPv6 packets need to be dropped if the IPv6 module is not loaded, and the
> host ip6tables will be used.
>
> Signed-off-by: Leonardo Bras <leonardo@xxxxxxxxxxxxx>
> ---
> Changes from v4:
> - Check if the host ip6tables is going to be used before testing
> ipv6 module presence
> - Adds a warning about ipv6 module disabled.
>
>
> net/bridge/br_netfilter_hooks.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/net/bridge/br_netfilter_hooks.c b/net/bridge/br_netfilter_hooks.c
> index d3f9592f4ff8..af7800103e51 100644
> --- a/net/bridge/br_netfilter_hooks.c
> +++ b/net/bridge/br_netfilter_hooks.c
> @@ -496,6 +496,10 @@ static unsigned int br_nf_pre_routing(void *priv,
> if (!brnet->call_ip6tables &&
> !br_opt_get(br, BROPT_NF_CALL_IP6TABLES))
> return NF_ACCEPT;
> + if (!ipv6_mod_enabled()) {
> + pr_warn_once("Module ipv6 is disabled, so call_ip6tables is not supported.");
> + return NF_DROP;
> + }

pr_warn_once needs a '\n'. Pablo, can you mangle this locally when
applying?

Patch looks good to me, so:

Acked-by: Florian Westphal <fw@xxxxxxxxx>