diff mbox series

[v2,01/16] sandbox: net: Ensure host name is always a valid string

Message ID 20210513193923.v2.1.I85633a7354c5b2ad5c55257607280392d069d70c@changeid
State Accepted
Commit 9d9bec216d4207b3f3336eda2ca2ba73698574cb
Delegated to: Tom Rini
Headers show
Series [v2,01/16] sandbox: net: Ensure host name is always a valid string | expand

Commit Message

Simon Glass May 14, 2021, 1:39 a.m. UTC
At present if ifname is exactly IFNAMSIZ characters then it will result
in an unterminated string. Fix this by using strlcpy() instead.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Coverity (CID: 316358)
---

Changes in v2:
- Put 'Reported-by:' after the sign-off

 drivers/net/sandbox-raw.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Ramon Fried May 15, 2021, 8:03 p.m. UTC | #1
On Fri, May 14, 2021 at 4:40 AM Simon Glass <sjg@chromium.org> wrote:
>
> At present if ifname is exactly IFNAMSIZ characters then it will result
> in an unterminated string. Fix this by using strlcpy() instead.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Reported-by: Coverity (CID: 316358)
> ---
>
> Changes in v2:
> - Put 'Reported-by:' after the sign-off
>
>  drivers/net/sandbox-raw.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/sandbox-raw.c b/drivers/net/sandbox-raw.c
> index ce66ff781ff..99eb7a3bbff 100644
> --- a/drivers/net/sandbox-raw.c
> +++ b/drivers/net/sandbox-raw.c
> @@ -161,7 +161,7 @@ static int sb_eth_raw_of_to_plat(struct udevice *dev)
>
>         ifname = dev_read_string(dev, "host-raw-interface");
>         if (ifname) {
> -               strncpy(priv->host_ifname, ifname, IFNAMSIZ);
> +               strlcpy(priv->host_ifname, ifname, IFNAMSIZ);
>                 printf(": Using %s from DT\n", priv->host_ifname);
>         }
>         if (dev_read_u32(dev, "host-raw-interface-idx",
> --
> 2.31.1.751.gd2f1c929bd-goog
>
Acked-by: Ramon Fried <rfried.dev@gmail.com>
Tom Rini July 16, 2021, 3:51 p.m. UTC | #2
On Thu, May 13, 2021 at 07:39:17PM -0600, Simon Glass wrote:

> At present if ifname is exactly IFNAMSIZ characters then it will result
> in an unterminated string. Fix this by using strlcpy() instead.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> Reported-by: Coverity (CID: 316358)
> Acked-by: Ramon Fried <rfried.dev@gmail.com>

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/drivers/net/sandbox-raw.c b/drivers/net/sandbox-raw.c
index ce66ff781ff..99eb7a3bbff 100644
--- a/drivers/net/sandbox-raw.c
+++ b/drivers/net/sandbox-raw.c
@@ -161,7 +161,7 @@  static int sb_eth_raw_of_to_plat(struct udevice *dev)
 
 	ifname = dev_read_string(dev, "host-raw-interface");
 	if (ifname) {
-		strncpy(priv->host_ifname, ifname, IFNAMSIZ);
+		strlcpy(priv->host_ifname, ifname, IFNAMSIZ);
 		printf(": Using %s from DT\n", priv->host_ifname);
 	}
 	if (dev_read_u32(dev, "host-raw-interface-idx",