It was <2023-10-05 czw 01:06>, when Justin Stitt wrote: > `strncpy` is deprecated for use on NUL-terminated destination strings > [1] and as such we should prefer more robust and less ambiguous string > interfaces. > > A suitable replacement is `strscpy` [2] due to the fact that it > guarantees NUL-termination on the destination buffer without > unnecessarily NUL-padding. > > It should be noted that there doesn't currently exist a bug here as > DRV_NAME is a small string literal which means no overread bugs are > present. > > Also to note, other ethernet drivers are using strscpy in a similar > pattern: > | dec/tulip/tulip_core.c > | 861: strscpy(info->driver, DRV_NAME, sizeof(info->driver)); > | > | 8390/ax88796.c > | 582: strscpy(info->driver, DRV_NAME, sizeof(info->driver)); > | > | dec/tulip/dmfe.c > | 1077: strscpy(info->driver, DRV_NAME, sizeof(info->driver)); > | > | 8390/etherh.c > | 558: strscpy(info->driver, DRV_NAME, sizeof(info->driver)); > > Link: > https://www.kernel.org/doc/html/latest/process/deprecated.html#strncpy-on-nul-terminated-strings > [1] > Link: https://manpages.debian.org/testing/linux-manual-4.8/strscpy.9.en.html > [2] > Link: https://github.com/KSPP/linux/issues/90 > Cc: [email protected] > Signed-off-by: Justin Stitt <[email protected]> > --- > Note: build-tested only. > --- > drivers/net/ethernet/asix/ax88796c_ioctl.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) >
Reviewed-by: Lukasz Stelmach <[email protected]> > diff --git a/drivers/net/ethernet/asix/ax88796c_ioctl.c > b/drivers/net/ethernet/asix/ax88796c_ioctl.c > index 916ae380a004..7d2fe2e5af92 100644 > --- a/drivers/net/ethernet/asix/ax88796c_ioctl.c > +++ b/drivers/net/ethernet/asix/ax88796c_ioctl.c > @@ -24,7 +24,7 @@ static void > ax88796c_get_drvinfo(struct net_device *ndev, struct ethtool_drvinfo *info) > { > /* Inherit standard device info */ > - strncpy(info->driver, DRV_NAME, sizeof(info->driver)); > + strscpy(info->driver, DRV_NAME, sizeof(info->driver)); > } > > static u32 ax88796c_get_msglevel(struct net_device *ndev) > > --- > base-commit: cbf3a2cb156a2c911d8f38d8247814b4c07f49a2 > change-id: > 20231005-strncpy-drivers-net-ethernet-asix-ax88796c_ioctl-c-56af20b7d992 > > Best regards, > -- > Justin Stitt <[email protected]> > > > -- Ćukasz Stelmach Samsung R&D Institute Poland Samsung Electronics
signature.asc
Description: PGP signature
