wifi: mac80211: use deflink and fix typo in link ID check
authorBenjamin Berg <benjamin.berg@intel.com>
Thu, 11 Jan 2024 16:17:46 +0000 (18:17 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 26 Jan 2024 08:39:50 +0000 (09:39 +0100)
This does not change anything effectively, but it is closer to what the
code is trying to achieve here. i.e. select the link data if it is an
MLD and fall back to using the deflink otherwise.

Fixes: 0f99f0878350 ("wifi: mac80211: Print local link address during authentication")
Signed-off-by: Benjamin Berg <benjamin.berg@intel.com>
Reviewed-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://msgid.link/20240111181514.4c4b1c40eb3c.I2771621dee328c618536596b7e56232df42a79c8@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/mlme.c

index 99188bd..cc9a8ea 100644 (file)
@@ -7869,10 +7869,10 @@ int ieee80211_mgd_auth(struct ieee80211_sub_if_data *sdata,
        if (err)
                goto err_clear;
 
-       if (req->link_id > 0)
+       if (req->link_id >= 0)
                link = sdata_dereference(sdata->link[req->link_id], sdata);
        else
-               link = sdata_dereference(sdata->link[0], sdata);
+               link = &sdata->deflink;
 
        if (WARN_ON(!link)) {
                err = -ENOLINK;