From 584aef09feb922ab55e877f47ba75318247d8bb1 Mon Sep 17 00:00:00 2001 From: Karthik M Date: Thu, 25 Sep 2025 13:01:14 +0530 Subject: [PATCH] AP MLD: Add Timeout Interval element for MLD reassociation rejection The AP MLD with an associated non-AP MLD receiving an (Re)Association Request frame that uses the same MLD MAC address as that of the associated non-AP MLD may reject association temporarily and include the Timeout Interval element to indicate the association comeback time. However, the Timeout Interval element is not included currently as mld_addrs_not_translated flag is true in this case which causes NULL sta object to be passed to send_assoc_resp(). Fix this by not setting mld_addrs_not_translated if the station is found in the same link where an (Re)Association Request frame is received, so that the Timeout Interval element is added into the (Re)Association Response frame when requesting association comeback. Signed-off-by: Karthik M --- src/ap/ieee802_11.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c index e92faa527..57e6503fb 100644 --- a/src/ap/ieee802_11.c +++ b/src/ap/ieee802_11.c @@ -5794,10 +5794,13 @@ static void handle_assoc(struct hostapd_data *hapd, sta = handle_mlo_translate(hapd, mgmt, len, reassoc, &assoc_hapd); if (sta) { - wpa_printf(MSG_DEBUG, - "MLD: Switching to assoc hapd/station"); - hapd = assoc_hapd; - mld_addrs_not_translated = true; + if (hapd != assoc_hapd) { + wpa_printf(MSG_DEBUG, + "MLD: Switching to assoc hapd/station"); + hapd = assoc_hapd; + mld_addrs_not_translated = true; + } + } } #endif /* CONFIG_IEEE80211BE */ -- 2.47.3