summaryrefslogtreecommitdiff
path: root/drivers/leds/leds-spi-byte.c
diff options
context:
space:
mode:
authorAzeem Shaikh <azeemshaikh38@gmail.com>2023-05-23 02:14:51 +0000
committerLee Jones <lee@kernel.org>2023-05-25 12:31:55 +0100
commitbf4a35e9201d30b63a8d276797d6ecfaa596ccd3 (patch)
treeaf0018bee1b00a3870c9fd007cf4c83deb443d73 /drivers/leds/leds-spi-byte.c
parentd6e3896b7c22278c6f4a9b166211fdddf1c86c3a (diff)
downloadlinux-bf4a35e9201d30b63a8d276797d6ecfaa596ccd3.tar.gz
linux-bf4a35e9201d30b63a8d276797d6ecfaa596ccd3.tar.bz2
linux-bf4a35e9201d30b63a8d276797d6ecfaa596ccd3.zip
leds: Replace all non-returning strlcpy with strscpy
strlcpy() reads the entire source buffer first. This read may exceed the destination size limit. This is both inefficient and can lead to linear read overflows if a source string is not NUL-terminated [1]. In an effort to remove strlcpy() completely [2], replace strlcpy() here with strscpy(). No return values were used, so direct replacement is safe. [1] https://www.kernel.org/doc/html/latest/process/deprecated.html#strlcpy [2] https://github.com/KSPP/linux/issues/89 Signed-off-by: Azeem Shaikh <azeemshaikh38@gmail.com> Reviewed-by: Kees Cook <keescook@chromium.org> Link: https://lore.kernel.org/r/20230523021451.2406362-1-azeemshaikh38@gmail.com Signed-off-by: Lee Jones <lee@kernel.org>
Diffstat (limited to 'drivers/leds/leds-spi-byte.c')
-rw-r--r--drivers/leds/leds-spi-byte.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/leds/leds-spi-byte.c b/drivers/leds/leds-spi-byte.c
index 2bc5c99daf51..2c7ffc3c78e6 100644
--- a/drivers/leds/leds-spi-byte.c
+++ b/drivers/leds/leds-spi-byte.c
@@ -98,7 +98,7 @@ static int spi_byte_probe(struct spi_device *spi)
return -ENOMEM;
of_property_read_string(child, "label", &name);
- strlcpy(led->name, name, sizeof(led->name));
+ strscpy(led->name, name, sizeof(led->name));
led->spi = spi;
mutex_init(&led->mutex);
led->cdef = device_get_match_data(dev);