wifi: cfg80211: replace strlcpy() with strscpy()
authorAzeem Shaikh <azeemshaikh38@gmail.com>
Mon, 12 Jun 2023 23:23:01 +0000 (23:23 +0000)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 14 Jun 2023 10:32:19 +0000 (12:32 +0200)
commit0ffe85885b31ac0308bb13a31eec6a441e2a2d77
tree5c9577677132a716ddff5bede8149211644013ab
parenta3ff9303b496b29bf182481d152a5efbb57a630e
wifi: cfg80211: 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 WIPHY_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/20230612232301.2572316-1-azeemshaikh38@gmail.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/wireless/trace.h