All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ido Schimmel <idosch@nvidia.com>
To: Baul Lee <baul.lee@xbow.com>
Cc: Andrew Lunn <andrew+netdev@lunn.ch>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Nikolay Aleksandrov <razor@blackwall.org>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	federico.kirschbaum@xbow.com
Subject: Re: [PATCH net] vxlan: mdb: Fix use-after-free in vxlan_mdb_remote_src_del()
Date: Wed, 26 Aug 2026 19:43:40 +0300	[thread overview]
Message-ID: <20260826164340.GA1867215@shredder> (raw)
In-Reply-To: <20260826151542.68815-1-baul.lee@xbow.com>

On Thu, Aug 27, 2026 at 12:15:42AM +0900, Baul Lee wrote:
> diff --git a/drivers/net/vxlan/vxlan_mdb.c b/drivers/net/vxlan/vxlan_mdb.c
> index d71e1925ecfd..7986c5b5dc67 100644
> --- a/drivers/net/vxlan/vxlan_mdb.c
> +++ b/drivers/net/vxlan/vxlan_mdb.c
> @@ -354,6 +354,10 @@ static bool vxlan_mdb_is_valid_source(const struct nlattr *attr, __be16 proto,
>  			NL_SET_ERR_MSG_MOD(extack, "IPv4 multicast source address is not allowed");
>  			return false;
>  		}
> +		if (nla_get_in_addr(attr) == htonl(INADDR_ANY)) {

Maybe:

if (ipv4_is_zeronet(nla_get_in_addr(attr)))

It's consistent with the ipv4_is_multicast() check above it.

> +			NL_SET_ERR_MSG_MOD(extack, "IPv4 all-zeros source address is not allowed");
> +			return false;
> +		}
>  		break;
>  #if IS_ENABLED(CONFIG_IPV6)
>  	case htons(ETH_P_IPV6): {
> @@ -368,6 +372,10 @@ static bool vxlan_mdb_is_valid_source(const struct nlattr *attr, __be16 proto,
>  			NL_SET_ERR_MSG_MOD(extack, "IPv6 multicast source address is not allowed");
>  			return false;
>  		}
> +		if (ipv6_addr_any(&src)) {
> +			NL_SET_ERR_MSG_MOD(extack, "IPv6 all-zeros source address is not allowed");
> +			return false;
> +		}

This looks fine.

Please add a test case in star_g_common() and sg_common() at
tools/testing/selftests/net/test_vxlan_mdb.sh. You can squash it into
this patch. We already have test cases for error cases there.

BTW, are you going to send v2 for [1]?

Thanks

[1] https://lore.kernel.org/netdev/20260815172032.79740-1-baul.lee@xbow.com/

      reply	other threads:[~2026-08-26 16:44 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-26 15:15 [PATCH net] vxlan: mdb: Fix use-after-free in vxlan_mdb_remote_src_del() Baul Lee
2026-08-26 16:43 ` Ido Schimmel [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260826164340.GA1867215@shredder \
    --to=idosch@nvidia.com \
    --cc=andrew+netdev@lunn.ch \
    --cc=baul.lee@xbow.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=federico.kirschbaum@xbow.com \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=razor@blackwall.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.