From ac26ebd8b5de0aea409bd896235325a64ff27e1f Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Sun, 28 Feb 2010 11:09:58 +0200 Subject: [PATCH] Allow roam based on preferred BSSID regardless of signal strength --- wpa_supplicant/events.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c index 6ead50120..f0efd977d 100644 --- a/wpa_supplicant/events.c +++ b/wpa_supplicant/events.c @@ -820,6 +820,14 @@ static int wpa_supplicant_need_to_roam(struct wpa_supplicant *wpa_s, wpa_printf(MSG_DEBUG, "Selected BSS: " MACSTR " level=%d", MAC2STR(selected->bssid), selected->level); + if (wpa_s->current_ssid->bssid_set && + os_memcmp(selected->bssid, wpa_s->current_ssid->bssid, ETH_ALEN) == + 0) { + wpa_printf(MSG_DEBUG, "Allow reassociation - selected BSS has " + "preferred BSSID"); + return 1; + } + min_diff = 2; if (current_bss->level < 0) { if (current_bss->level < -85)