[PATCH] ALSA: hiface: Use scnprintf() in hiface_chip_create()
From: Thorsten Blum
Date: Wed Oct 21 2026 - 05:46:08 EST
To prepare for removing strlcat() from the kernel [1], use scnprintf()
instead. Since scnprintf() returns the number of characters actually
written, drop the length check before usb_make_path().
Also drop the explicit size arguments from strscpy() since they can be
inferred from the destination arrays.
No functional change.
Link: https://github.com/KSPP/linux/issues/370 [1]
Signed-off-by: Thorsten Blum <blum@xxxxxxxxxx>
---
sound/usb/hiface/chip.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/sound/usb/hiface/chip.c b/sound/usb/hiface/chip.c
index bce28f683666..41a43bc59397 100644
--- a/sound/usb/hiface/chip.c
+++ b/sound/usb/hiface/chip.c
@@ -63,18 +63,15 @@ static int hiface_chip_create(struct usb_interface *intf,
return ret;
}
- strscpy(card->driver, DRIVER_NAME, sizeof(card->driver));
+ strscpy(card->driver, DRIVER_NAME);
if (quirk && quirk->device_name)
- strscpy(card->shortname, quirk->device_name, sizeof(card->shortname));
+ strscpy(card->shortname, quirk->device_name);
else
- strscpy(card->shortname, "M2Tech generic audio", sizeof(card->shortname));
+ strscpy(card->shortname, "M2Tech generic audio");
- strlcat(card->longname, card->shortname, sizeof(card->longname));
- len = strlcat(card->longname, " at ", sizeof(card->longname));
- if (len < sizeof(card->longname))
- usb_make_path(device, card->longname + len,
- sizeof(card->longname) - len);
+ len = scnprintf(card->longname, sizeof(card->longname), "%s at ", card->shortname);
+ usb_make_path(device, card->longname + len, sizeof(card->longname) - len);
chip = card->private_data;
chip->dev = device;