summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustin Stitt <justinstitt@google.com>2024-03-05 23:34:42 +0000
committerMartin K. Petersen <martin.petersen@oracle.com>2024-03-10 18:37:43 -0400
commit855ce06f9104e8b4b336807f3c941381bf845eb1 (patch)
tree2c89e37ccecd8cf6ef07bb08bbcc87db1b1bdf79
parent8fd4c9c8e1f33b76c02b0cb0421abafb1cf91e6b (diff)
downloadlinux-stable-855ce06f9104e8b4b336807f3c941381bf845eb1.tar.gz
linux-stable-855ce06f9104e8b4b336807f3c941381bf845eb1.tar.bz2
linux-stable-855ce06f9104e8b4b336807f3c941381bf845eb1.zip
scsi: wd33c93: Replace deprecated strncpy() with strscpy()
@p1 is assigned to @setup_buffer and then we manually assign a NUL-byte at the first index. This renders the following strlen() call useless. Moreover, we don't need to reassign p1 to setup_buffer for any reason -- neither do we need to manually set a NUL-byte at the end. strscpy() resolves all this code making it easier to read. Even considering the path where @str is falsey, the manual NUL-byte assignment is useless as setup_buffer is declared with static storage duration in the top-level scope which should NUL-initialize the whole buffer. Reviewed-by: Kees Cook <keescook@chromium.org> Signed-off-by: Justin Stitt <justinstitt@google.com> Link: https://lore.kernel.org/r/20240305-strncpy-drivers-scsi-mpi3mr-mpi3mr_fw-c-v3-7-5b78a13ff984@google.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-rw-r--r--drivers/scsi/wd33c93.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/scsi/wd33c93.c b/drivers/scsi/wd33c93.c
index e4fafc77bd20..a44b60c9004a 100644
--- a/drivers/scsi/wd33c93.c
+++ b/drivers/scsi/wd33c93.c
@@ -1721,9 +1721,7 @@ wd33c93_setup(char *str)
p1 = setup_buffer;
*p1 = '\0';
if (str)
- strncpy(p1, str, SETUP_BUFFER_SIZE - strlen(setup_buffer));
- setup_buffer[SETUP_BUFFER_SIZE - 1] = '\0';
- p1 = setup_buffer;
+ strscpy(p1, str, SETUP_BUFFER_SIZE);
i = 0;
while (*p1 && (i < MAX_SETUP_ARGS)) {
p2 = strchr(p1, ',');