nl80211: Update port authorized indication for MLO address
Handling of port authorized event for STA currently handles the connected BSSID. This needs additional handling to support the AP MLD address in case of MLO connection. The connected_addr expected by cfg80211_port_authorized() is mld_addr for ML connection case. Signed-off-by: Vinayak Yadawad <vinayak.yadawad@broadcom.com>
This commit is contained in:
parent
6f014c0d01
commit
69ea73bfed
1 changed files with 13 additions and 7 deletions
|
@ -3511,14 +3511,20 @@ static void nl80211_port_authorized(struct wpa_driver_nl80211_data *drv,
|
||||||
wpa_printf(MSG_DEBUG,
|
wpa_printf(MSG_DEBUG,
|
||||||
"nl80211: Port authorized for STA addr " MACSTR,
|
"nl80211: Port authorized for STA addr " MACSTR,
|
||||||
MAC2STR(addr));
|
MAC2STR(addr));
|
||||||
} else if (is_sta_interface(drv->nlmode) &&
|
} else if (is_sta_interface(drv->nlmode)) {
|
||||||
os_memcmp(addr, drv->bssid, ETH_ALEN) != 0) {
|
const u8 *connected_addr;
|
||||||
|
|
||||||
|
connected_addr = drv->sta_mlo_info.valid_links ?
|
||||||
|
drv->sta_mlo_info.ap_mld_addr : drv->bssid;
|
||||||
|
if (os_memcmp(addr, connected_addr, ETH_ALEN) != 0) {
|
||||||
wpa_printf(MSG_DEBUG,
|
wpa_printf(MSG_DEBUG,
|
||||||
"nl80211: Ignore port authorized event for " MACSTR
|
"nl80211: Ignore port authorized event for "
|
||||||
" (not the currently connected BSSID " MACSTR ")",
|
MACSTR " (not the currently connected BSSID "
|
||||||
MAC2STR(addr), MAC2STR(drv->bssid));
|
MACSTR ")",
|
||||||
|
MAC2STR(addr), MAC2STR(connected_addr));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (tb[NL80211_ATTR_TD_BITMAP]) {
|
if (tb[NL80211_ATTR_TD_BITMAP]) {
|
||||||
event.port_authorized.td_bitmap_len =
|
event.port_authorized.td_bitmap_len =
|
||||||
|
|
Loading…
Reference in a new issue