Hi, This series aims to eliminate uses of strncpy() as it is a deprecated interface [1] with many viable replacements available.
Predominantly, strscpy() is the go-to replacement as it guarantees NUL-termination on the destination buffer (which strncpy does not). With that being said, I did not identify any buffer overread problems as the size arguments were carefully measured to leave room for trailing NUL-bytes. Nonetheless, we should favor more robust and less ambiguous interfaces. Previously, each of these patches was sent individually at: 1) https://lore.kernel.org/all/20231009-strncpy-drivers-net-ethernet-intel-e100-c-v1-1-ca0ff9686...@google.com/ 2) https://lore.kernel.org/all/20231010-strncpy-drivers-net-ethernet-intel-e1000-e1000_main-c-v1-1-b1d64581f...@google.com/ 3) https://lore.kernel.org/all/20231010-strncpy-drivers-net-ethernet-intel-fm10k-fm10k_ethtool-c-v1-1-dbdc4570c...@google.com/ 4) https://lore.kernel.org/all/20231010-strncpy-drivers-net-ethernet-intel-i40e-i40e_ddp-c-v1-1-f01a23394...@google.com/ 5) https://lore.kernel.org/all/20231010-strncpy-drivers-net-ethernet-intel-igb-igb_main-c-v1-1-d796234a8...@google.com/ 6) https://lore.kernel.org/all/20231010-strncpy-drivers-net-ethernet-intel-igbvf-netdev-c-v1-1-69ccfb2c2...@google.com/ 7) https://lore.kernel.org/all/20231010-strncpy-drivers-net-ethernet-intel-igc-igc_main-c-v1-1-f1f507ecc...@google.com/ Consider these dead as this series is their new home :) I found all these instances with: $ rg "strncpy\(" This series may collide in a not-so-nice way with [3]. This series can go in after that one with a rebase. I'll send a v2 if necessary. [3]: https://lore.kernel.org/netdev/[email protected]/ 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 Signed-off-by: Justin Stitt <[email protected]> --- Justin Stitt (7): e100: replace deprecated strncpy with strscpy e1000: replace deprecated strncpy with strscpy fm10k: replace deprecated strncpy with strscpy i40e: use scnprintf over strncpy+strncat igb: replace deprecated strncpy with strscpy igbvf: replace deprecated strncpy with strscpy igc: replace deprecated strncpy with strscpy drivers/net/ethernet/intel/e100.c | 2 +- drivers/net/ethernet/intel/e1000/e1000_main.c | 2 +- drivers/net/ethernet/intel/fm10k/fm10k_ethtool.c | 8 ++++---- drivers/net/ethernet/intel/i40e/i40e_ddp.c | 7 +++---- drivers/net/ethernet/intel/igb/igb_main.c | 2 +- drivers/net/ethernet/intel/igbvf/netdev.c | 2 +- drivers/net/ethernet/intel/igc/igc_main.c | 2 +- 7 files changed, 12 insertions(+), 13 deletions(-) --- base-commit: cbf3a2cb156a2c911d8f38d8247814b4c07f49a2 change-id: 20231010-netdev-replace-strncpy-resend-as-series-dee90d0c63bd Best regards, -- Justin Stitt <[email protected]>
