Message ID | 202212091533253334827@zte.com.cn (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | [net-next,v2] hns: use strscpy() to instead of strncpy() | expand |
Fri, Dec 09, 2022 at 08:33:25AM CET, yang.yang29@zte.com.cn wrote: >From: Xu Panda <xu.panda@zte.com.cn> > >The implementation of strscpy() is more robust and safer. >That's now the recommended way to copy NUL terminated strings. > >Signed-off-by: Xu Panda <xu.panda@zte.com.cn> >Signed-off-by: Yang Yang <yang.yang29@zte.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com>
On 2022/12/9 15:33, yang.yang29@zte.com.cn wrote: > From: Xu Panda <xu.panda@zte.com.cn> > > The implementation of strscpy() is more robust and safer. > That's now the recommended way to copy NUL terminated strings. > > Signed-off-by: Xu Panda <xu.panda@zte.com.cn> > Signed-off-by: Yang Yang <yang.yang29@zte.com> > --- > change for v2 > - change the prefix and subject: replace ethtool with hns, > and replace linux-next with net-next. > --- > drivers/net/ethernet/hisilicon/hns/hns_ethtool.c | 11 ++++------- > 1 file changed, 4 insertions(+), 7 deletions(-) > > diff --git a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c > index 54faf0f2d1d8..b54f3706fb97 100644 > --- a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c > +++ b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c > @@ -644,18 +644,15 @@ static void hns_nic_get_drvinfo(struct net_device *net_dev, > { > struct hns_nic_priv *priv = netdev_priv(net_dev); > > - strncpy(drvinfo->version, HNAE_DRIVER_VERSION, > + strscpy(drvinfo->version, HNAE_DRIVER_VERSION, > sizeof(drvinfo->version)); > - drvinfo->version[sizeof(drvinfo->version) - 1] = '\0'; > > - strncpy(drvinfo->driver, HNAE_DRIVER_NAME, sizeof(drvinfo->driver)); > - drvinfo->driver[sizeof(drvinfo->driver) - 1] = '\0'; > + strscpy(drvinfo->driver, HNAE_DRIVER_NAME, sizeof(drvinfo->driver)); > > - strncpy(drvinfo->bus_info, priv->dev->bus->name, > + strscpy(drvinfo->bus_info, priv->dev->bus->name, > sizeof(drvinfo->bus_info)); > - drvinfo->bus_info[ETHTOOL_BUSINFO_LEN - 1] = '\0'; > > - strncpy(drvinfo->fw_version, "N/A", ETHTOOL_FWVERS_LEN); > + strscpy(drvinfo->fw_version, "N/A", ETHTOOL_FWVERS_LEN); > drvinfo->eedump_len = 0; > } > Reviewed-by: Hao Lan <lanhao@huawei.com>
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c index 54faf0f2d1d8..b54f3706fb97 100644 --- a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c +++ b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c @@ -644,18 +644,15 @@ static void hns_nic_get_drvinfo(struct net_device *net_dev, { struct hns_nic_priv *priv = netdev_priv(net_dev); - strncpy(drvinfo->version, HNAE_DRIVER_VERSION, + strscpy(drvinfo->version, HNAE_DRIVER_VERSION, sizeof(drvinfo->version)); - drvinfo->version[sizeof(drvinfo->version) - 1] = '\0'; - strncpy(drvinfo->driver, HNAE_DRIVER_NAME, sizeof(drvinfo->driver)); - drvinfo->driver[sizeof(drvinfo->driver) - 1] = '\0'; + strscpy(drvinfo->driver, HNAE_DRIVER_NAME, sizeof(drvinfo->driver)); - strncpy(drvinfo->bus_info, priv->dev->bus->name, + strscpy(drvinfo->bus_info, priv->dev->bus->name, sizeof(drvinfo->bus_info)); - drvinfo->bus_info[ETHTOOL_BUSINFO_LEN - 1] = '\0'; - strncpy(drvinfo->fw_version, "N/A", ETHTOOL_FWVERS_LEN); + strscpy(drvinfo->fw_version, "N/A", ETHTOOL_FWVERS_LEN); drvinfo->eedump_len = 0; }