AP MLD/nl80211: Pass ctx in mlme_event_mgmt()

Pass ctx in mlme_event_mgmt(). This will help in routing the event
properly to the link BSS.

Signed-off-by: Sriram R <quic_srirrama@quicinc.com>
Signed-off-by: Aditya Kumar Singh <quic_adisi@quicinc.com>
This commit is contained in:
Sriram R 2024-03-28 23:46:40 +05:30 committed by Jouni Malinen
parent c36ad11500
commit 80864d0116
3 changed files with 11 additions and 0 deletions

View file

@ -1845,6 +1845,8 @@ static int hostapd_mgmt_rx(struct hostapd_data *hapd, struct rx_mgmt *rx_mgmt)
struct hostapd_frame_info fi;
int ret;
if (rx_mgmt->ctx)
hapd = rx_mgmt->ctx;
hapd = switch_link_hapd(hapd, rx_mgmt->link_id);
iface = hapd->iface;

View file

@ -6355,6 +6355,14 @@ union wpa_event_data {
*/
void *drv_priv;
/**
* ctx - Pointer to store ctx of private BSS information
*
* If not set to NULL, this is used for forwarding the packet
* to right link BSS of ML BSS.
*/
void *ctx;
/**
* freq - Frequency (in MHz) on which the frame was received
*/

View file

@ -1367,6 +1367,7 @@ static void mlme_event_mgmt(struct i802_bss *bss,
event.rx_mgmt.frame_len = len;
event.rx_mgmt.ssi_signal = ssi_signal;
event.rx_mgmt.drv_priv = bss;
event.rx_mgmt.ctx = bss->ctx;
event.rx_mgmt.link_id = link_id;
wpa_supplicant_event(drv->ctx, EVENT_RX_MGMT, &event);