On 10/24/2023 10:42 AM, Justin Stitt wrote:
strncpy() is deprecated [1] and we should prefer less ambiguous
interfaces.

In this case, arvif->u.ap.ssid has its length maintained by
arvif->u.ap.ssid_len which indicates it may not need to be
NUL-terminated. Make this explicit with __nonstring and use a plain old
memcpy.

This is also consistent with future copies into arvif->u.ap.ssid:

        if (changed & BSS_CHANGED_SSID &&
            vif->type == NL80211_IFTYPE_AP) {
                arvif->u.ap.ssid_len = vif->cfg.ssid_len;
                if (vif->cfg.ssid_len)
                        memcpy(arvif->u.ap.ssid, vif->cfg.ssid,
                               vif->cfg.ssid_len);
                arvif->u.ap.hidden_ssid = info->hidden_ssid;
        }

Link: 
https://www.kernel.org/doc/html/latest/process/deprecated.html#strncpy-on-nul-terminated-strings
 [1]
Link: https://github.com/KSPP/linux/issues/90
Cc: linux-harden...@vger.kernel.org
Signed-off-by: Justin Stitt <justinst...@google.com>
Acked-by: Jeff Johnson <quic_jjohn...@quicinc.com>


Reply via email to