From 1bff90cb567f530bd5ba54004f54a2dd4f9f516c Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Sat, 30 Jul 2005 12:50:03 -0700 Subject: [PATCH] --- yaml --- r: 6749 b: refs/heads/master c: 0c629a69fd8ec7b67566cfc052a9b1c4b927805a h: refs/heads/master i: 6747: 4b401e7204f22210a966e1dd6dc8e2539cbd306b v: v3 --- [refs] | 2 +- trunk/drivers/net/wireless/hostap/hostap_info.c | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index af359398619d..2b6d5506a44e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2e4fd068e7e25e654a454ed4a425f239c0f6407a +refs/heads/master: 0c629a69fd8ec7b67566cfc052a9b1c4b927805a diff --git a/trunk/drivers/net/wireless/hostap/hostap_info.c b/trunk/drivers/net/wireless/hostap/hostap_info.c index 6ca94918e0f8..5aa998fdf1c4 100644 --- a/trunk/drivers/net/wireless/hostap/hostap_info.c +++ b/trunk/drivers/net/wireless/hostap/hostap_info.c @@ -453,6 +453,19 @@ static void handle_info_queue_scanresults(local_info_t *local) { if (local->host_roaming == 1 && local->iw_mode == IW_MODE_INFRA) prism2_host_roaming(local); + + if (local->host_roaming == 2 && local->iw_mode == IW_MODE_INFRA && + memcmp(local->preferred_ap, "\x00\x00\x00\x00\x00\x00", + ETH_ALEN) != 0) { + /* + * Firmware seems to be getting into odd state in host_roaming + * mode 2 when hostscan is used without join command, so try + * to fix this by re-joining the current AP. This does not + * actually trigger a new association if the current AP is + * still in the scan results. + */ + prism2_host_roaming(local); + } }