tracing: Replace all non-returning strlcpy with strscpy
authorAzeem Shaikh <azeemshaikh38@gmail.com>
Tue, 16 May 2023 14:39:56 +0000 (14:39 +0000)
committerKees Cook <keescook@chromium.org>
Fri, 26 May 2023 20:52:19 +0000 (13:52 -0700)
commitc7dce4c5d9f6b17feec5ec6056453d019ee4d13b
tree0ae4c2dd7cf4471458939670b59ce172eeea4ef6
parent7afbe5defb52f721fe7b04c7e36e0c60cecdeea8
tracing: 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 with strlcpy 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>
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20230516143956.1367827-1-azeemshaikh38@gmail.com
kernel/trace/trace.c
kernel/trace/trace_events.c
kernel/trace/trace_events_inject.c
kernel/trace/trace_kprobe.c
kernel/trace/trace_probe.c