scsi: target: tcmu: Replace strlcpy() with strscpy()
authorAzeem Shaikh <azeemshaikh38@gmail.com>
Wed, 21 Jun 2023 03:00:33 +0000 (03:00 +0000)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 22 Jun 2023 01:13:00 +0000 (21:13 -0400)
commit4b2e28758dafeeaa34819296821686addfddaa6a
tree19e5952826d2f8797a41e5d966d9219a71838c67
parentd1e8a9fbb39292e6666192565b51bbda781f9f04
scsi: target: tcmu: Replace 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>
Link: https://lore.kernel.org/r/20230621030033.3800351-3-azeemshaikh38@gmail.com
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/target/target_core_user.c