mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-01 22:54:01 +00:00
net: fec: replace deprecated strncpy with ethtool_sprintf
`strncpy` is deprecated for use on NUL-terminated destination strings [1] and as such we should prefer more robust and less ambiguous string interfaces. ethtool_sprintf() is designed specifically for get_strings() usage. Let's replace strncpy in favor of this more robust and easier to understand interface. Also, while we're here, let's change memcpy() over to ethtool_sprintf() for consistency. 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: linux-hardening@vger.kernel.org Signed-off-by: Justin Stitt <justinstitt@google.com> Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
a243ecc323
commit
659ce55fdd
1 changed files with 2 additions and 4 deletions
|
@ -2907,12 +2907,10 @@ static void fec_enet_get_strings(struct net_device *netdev,
|
|||
switch (stringset) {
|
||||
case ETH_SS_STATS:
|
||||
for (i = 0; i < ARRAY_SIZE(fec_stats); i++) {
|
||||
memcpy(data, fec_stats[i].name, ETH_GSTRING_LEN);
|
||||
data += ETH_GSTRING_LEN;
|
||||
ethtool_sprintf(&data, "%s", fec_stats[i].name);
|
||||
}
|
||||
for (i = 0; i < ARRAY_SIZE(fec_xdp_stat_strs); i++) {
|
||||
strncpy(data, fec_xdp_stat_strs[i], ETH_GSTRING_LEN);
|
||||
data += ETH_GSTRING_LEN;
|
||||
ethtool_sprintf(&data, "%s", fec_xdp_stat_strs[i]);
|
||||
}
|
||||
page_pool_ethtool_stats_get_strings(data);
|
||||
|
||||
|
|
Loading…
Reference in a new issue