From: Sriram R <quic_srirrama@xxxxxxxxxxx> Add support to pass ctx in mlme_event_mgmt(). This will help in to route the event properly to link BSS. Signed-off-by: Sriram R <quic_srirrama@xxxxxxxxxxx> Signed-off-by: Aditya Kumar Singh <quic_adisi@xxxxxxxxxxx> --- src/ap/drv_callbacks.c | 2 +- src/drivers/driver.h | 8 ++++++++ src/drivers/driver_nl80211_event.c | 1 + 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/ap/drv_callbacks.c b/src/ap/drv_callbacks.c index adac2d478c2a..3b24aa4f442a 100644 --- a/src/ap/drv_callbacks.c +++ b/src/ap/drv_callbacks.c @@ -1810,8 +1810,8 @@ static int hostapd_mgmt_rx(struct hostapd_data *hapd, struct rx_mgmt *rx_mgmt) const u8 *bssid; struct hostapd_frame_info fi; int ret; - bool is_mld = false; + hapd = rx_mgmt->ctx ? rx_mgmt->ctx : hapd; hapd = switch_link_hapd(hapd, rx_mgmt->link_id); iface = hapd->iface; diff --git a/src/drivers/driver.h b/src/drivers/driver.h index d67c949b65c2..a7455ef6e430 100644 --- a/src/drivers/driver.h +++ b/src/drivers/driver.h @@ -6345,6 +6345,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 */ diff --git a/src/drivers/driver_nl80211_event.c b/src/drivers/driver_nl80211_event.c index 51b27bd5e79d..1ca8b5bcef29 100644 --- a/src/drivers/driver_nl80211_event.c +++ b/src/drivers/driver_nl80211_event.c @@ -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); -- 2.25.1 _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap