Re: [PATCH net 6/8] net: bcmgenet: validate Ethernet address in bcmgenet_set_mac_addr
Nicolai Buchwitz <[email protected]>
| Newsgroups | org.kernel.vger.linux-kernel,org.kernel.vger.netdev |
|---|---|
| Message-ID | <[email protected]> |
On 18.9.2026 02:07, Florian Fainelli wrote:
> bcmgenet_set_mac_addr() did not check whether the provided MAC address
> is a
> valid Ethernet address before applying it. Userspace could configure an
> invalid address (such as all zeroes or a multicast address) while the
> interface is down.
>
> Add a call to is_valid_ether_addr() and return -EADDRNOTAVAIL if the
> MAC
> address is not valid.
>
> Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
> Assisted-by: LLM
> Co-authored-by: Cursor <[email protected]>
> Change-Id: I1cae9178ff2c9243510556f42a194058c10aea7e
> ---
> drivers/net/ethernet/broadcom/genet/bcmgenet.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
> b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
> index 799da63e3a4e..90ca4f220cc7 100644
> --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
> +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
> @@ -3635,6 +3635,9 @@ static int bcmgenet_set_mac_addr(struct
> net_device *dev, void *p)
> if (netif_running(dev))
> return -EBUSY;
>
> + if (!is_valid_ether_addr(addr->sa_data))
> + return -EADDRNOTAVAIL;
> +
> eth_hw_addr_set(dev, addr->sa_data);
>
> return 0;
Reviewed-by: Nicolai Buchwitz <[email protected]>
Thanks,
Nicolai