wifi: mac80211: Replace strlcpy with strscpy
authorAzeem Shaikh <azeemshaikh38@gmail.com>
Tue, 13 Jun 2023 00:34:04 +0000 (00:34 +0000)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 14 Jun 2023 10:32:19 +0000 (12:32 +0200)
commitf3c21ed9ce17438b9b6fb4a959640c486cabda24
treeb4da7ac9a6113effae9f3e6cbb7963373edf4bf7
parent0ffe85885b31ac0308bb13a31eec6a441e2a2d77
wifi: mac80211: 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().

Direct replacement is safe here since LOCAL_ASSIGN is only used by
TRACE macros and the return values are ignored.

[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/20230613003404.3538524-1-azeemshaikh38@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/trace.h