The AP MLD may require the "link_id" to properly handle unexpected
frames. For instance, if the AP MLD receives a Data frame from a
non-associated STA, it must send deauthentication to the link on which
the STA is operating.
Signed-off-by: Michael-CY Lee <michael-cy.lee@mediatek.com>
Reviewed-by: Money Wang <money.wang@mediatek.com>
hostapd_client_poll_ok(hapd, data->client_poll.addr);
break;
case EVENT_RX_FROM_UNKNOWN:
+ hapd = switch_link_hapd(hapd, data->rx_from_unknown.link_id);
hostapd_rx_from_unknown_sta(hapd, data->rx_from_unknown.bssid,
data->rx_from_unknown.addr,
data->rx_from_unknown.wds);
const u8 *bssid;
const u8 *addr;
int wds;
+ int link_id;
} rx_from_unknown;
/**
event.rx_from_unknown.bssid = bss->addr;
event.rx_from_unknown.addr = nla_data(tb[NL80211_ATTR_MAC]);
event.rx_from_unknown.wds = wds;
+ event.rx_from_unknown.link_id = tb[NL80211_ATTR_MLO_LINK_ID] ?
+ nla_get_u8(tb[NL80211_ATTR_MLO_LINK_ID]) : -1;
wpa_supplicant_event(drv->ctx, EVENT_RX_FROM_UNKNOWN, &event);
}