diff options
author | Heinrich Schuchardt <heinrich.schuchardt@canonical.com> | 2022-12-07 11:53:29 +0100 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2022-12-22 15:39:13 -0500 |
commit | 56e3b1470333eb9294a5ae5f58515377aa546aae (patch) | |
tree | a04b35c1e6454c7aa96a46083923ddd39a31d5b3 | |
parent | 0d6d5a4aa6e04bedf87793de337c05a022268041 (diff) | |
download | u-boot-56e3b1470333eb9294a5ae5f58515377aa546aae.zip u-boot-56e3b1470333eb9294a5ae5f58515377aa546aae.tar.gz u-boot-56e3b1470333eb9294a5ae5f58515377aa546aae.tar.bz2 |
net: don't memcpy to NULL
In ndisc_receive() 7 bytes are copied from a buffer of size 6 to NULL.
net_nd_packet_mac is a pointer. If it is NULL, we should set it to the
address of the buffer with the MAC address.
Addresses-Coverity-ID: 430974 ("Out-of-bounds access")
Fixes: c6610e1d90ea ("net: ipv6: Add Neighbor Discovery Protocol (NDP)")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Viacheslav Mitrofanov <v.v.mitrofanov@yadro.com>
-rw-r--r-- | net/ndisc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ndisc.c b/net/ndisc.c index 3c0eeea..367dae7 100644 --- a/net/ndisc.c +++ b/net/ndisc.c @@ -265,7 +265,7 @@ int ndisc_receive(struct ethernet_hdr *et, struct ip6_hdr *ip6, int len) /* save address for later use */ if (!net_nd_packet_mac) - memcpy(net_nd_packet_mac, neigh_eth_addr, 7); + net_nd_packet_mac = neigh_eth_addr; /* modify header, and transmit it */ memcpy(((struct ethernet_hdr *)net_nd_tx_packet)->et_dest, |