[PATCH 25/26] MBO: Always accept BTM request with disassociation imminent bit set
Ilan Peer
ilan.peer at intel.com
Mon Feb 15 06:54:01 PST 2016
From: Avraham Stern <avraham.stern at intel.com>
According to Multiband Operation specification (r17, section 3.5.2),
a BSS Transition Management Request with the disassociation imminent
bit set should always be accepted.
This is enforced in case the request did not include a candidate list.
However, in case a candidate list was included but none of the APs in
the candidate list was found in the scan results, the request is
rejected.
Fix that by always accepting a request with the disassociation imminent
bit set even if no roaming candidate was found.
Signed-off-by: Avraham Stern <avraham.stern at intel.com>
---
wpa_supplicant/wnm_sta.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/wpa_supplicant/wnm_sta.c b/wpa_supplicant/wnm_sta.c
index ff1dd66..eda996d 100644
--- a/wpa_supplicant/wnm_sta.c
+++ b/wpa_supplicant/wnm_sta.c
@@ -877,10 +877,18 @@ send_bss_resp_fail:
if (!reply_on_fail)
return 0;
- /* Send reject response for all the failures */
+ /* Send a response for all the failures */
if (wpa_s->wnm_reply) {
wpa_s->wnm_reply = 0;
+ /* If disassoc imminent is set, we must not reject */
+ if (wpa_s->wnm_mode & WNM_BSS_TM_REQ_DISASSOC_IMMINENT ||
+ wpa_s->wnm_mode & WNM_BSS_TM_REQ_ESS_DISASSOC_IMMINENT) {
+ wpa_printf(MSG_DEBUG,
+ "WNM: Accept BTM request because disassociation imminent bit is set");
+ status = WNM_BSS_TM_ACCEPT;
+ }
+
wnm_send_bss_transition_mgmt_resp(wpa_s,
wpa_s->wnm_dialog_token,
status, 0, NULL);
--
1.9.1
More information about the Hostap
mailing list