scsi: devinfo: Replace strncpy() and manual pad
Depending on the state of @compatible, we are going to do different things
with our @to buffer.
When @compatible is true we want a NUL-term'd and NUL-padded destination
buffer. Conversely, if @compatible is false we just want a space-padded
destination buffer (no NUL-term required).
As per:
/**
* scsi_dev_info_list_add_keyed - add one dev_info list entry.
* @compatible: if true, null terminate short strings. Otherwise space pad.
...
Note that we can't easily use strtomem_pad() here as the size of the @to
buffer is unknown to the compiler due to indirection layers.
Now, the intent of the code is more clear (I probably didn't even need
to add a comment -- that's how clear it is).
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-5-5b78a13ff984@google.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>