mbox series

[00/13] Convert all users of strlcpy to strscpy

Message ID 20210131172838.146706-1-memxor@gmail.com
Headers show
Series Convert all users of strlcpy to strscpy | expand

Message

Kumar Kartikeya Dwivedi Jan. 31, 2021, 5:28 p.m. UTC
This series converts all existing users of strlcpy in drivers/staging to use
strscpy instead.

strlcpy is marked as deprecated in Documentation/process/deprecated.rst, and
there is no functional difference when the caller expects truncation (when not
checking the return value). strscpy is relatively better as it also avoids
scanning the whole source string.

This silences the related checkpatch warnings from:
5dbdb2d87c29 ("checkpatch: prefer strscpy to strlcpy")

The conversions were performed in two steps:

1. The following coccinelle script was used to identify and replace call sites
that expect truncation.

$ spatch --sp-file strscpy.cocci --include-headers --dir --in-place drivers/staging

@strscpy@
expression dest, src, size;
@@
-strlcpy(dest, src, size);
+strscpy(dest, src, size);

2. Each individual automated conversion was rechecked manually for correctness.

Kumar Kartikeya Dwivedi (13):
  staging: comedi: Switch from strlcpy to strscpy
  staging: greybus: Switch from strlcpy to strscpy
  staging: fsl-dpaa2: Switch from strlcpy to strscpy
  staging: most: Switch from strlcpy to strscpy
  staging: nvec: Switch from strlcpy to strscpy
  staging: octeon: Switch from strlcpy to strscpy
  staging: olpc_dcon: Switch from strlcpy to strscpy
  staging: rtl8188eu: Switch from strlcpy to strscpy
  staging: rtl8192e: Switch from strlcpy to strscpy
  staging: rtl8192u: Switch from strlcpy to strscpy
  staging: rtl8712: Switch from strlcpy to strscpy
  staging: sm750fb: Switch from strlcpy to strscpy
  staging: wimax: Switch from strlcpy to strscpy

 drivers/staging/comedi/comedi_fops.c                      | 4 ++--
 drivers/staging/fsl-dpaa2/ethsw/ethsw-ethtool.c           | 6 +++---
 drivers/staging/greybus/audio_helper.c                    | 2 +-
 drivers/staging/greybus/audio_module.c                    | 2 +-
 drivers/staging/greybus/audio_topology.c                  | 6 +++---
 drivers/staging/greybus/power_supply.c                    | 2 +-
 drivers/staging/greybus/spilib.c                          | 4 ++--
 drivers/staging/most/sound/sound.c                        | 2 +-
 drivers/staging/most/video/video.c                        | 6 +++---
 drivers/staging/nvec/nvec_ps2.c                           | 4 ++--
 drivers/staging/octeon/ethernet-mdio.c                    | 6 +++---
 drivers/staging/olpc_dcon/olpc_dcon.c                     | 2 +-
 drivers/staging/rtl8188eu/os_dep/ioctl_linux.c            | 2 +-
 drivers/staging/rtl8192e/rtl8192e/rtl_ethtool.c           | 6 +++---
 drivers/staging/rtl8192u/ieee80211/ieee80211_softmac_wx.c | 2 +-
 drivers/staging/rtl8712/rtl871x_ioctl_linux.c             | 2 +-
 drivers/staging/sm750fb/sm750.c                           | 2 +-
 drivers/staging/wimax/i2400m/netdev.c                     | 6 +++---
 drivers/staging/wimax/i2400m/usb.c                        | 4 ++--
 19 files changed, 35 insertions(+), 35 deletions(-)