Roaming on android blacklists incorrect bss
Mikael Kanstrup
mikael.kanstrup at sonymobile.com
Mon Aug 22 09:35:18 PDT 2016
Hi Jouni,
Wanted to ask if you've had the time look at this. The fix is patch 5/5,
the others are there only to reproduce the error with hwsim tests. If it
helps I can resend the patches with git send-mail.
Regards
Mikael Kanstrup
On 07/01/2016 10:36 AM, Mikael Kanstrup wrote:
> Hi Jouni and all,
>
> On Android M we've seen cases where Android's way of roaming sometimes
> end up blacklisting incorrect bss.
>
> Connected to BSSID1 to roam to another AP the following sequence of
> commands are used:
> SET_NETWORK 0 bssid <BSSID2>
> ENABLE_NETWORK 0
> REASSOCIATE
>
> Most of the time this works just fine, though if authentication timer
> times out (probably due to auth/assoc/eapol packet loss) the BSSID
> roamed away from gets blacklisted (BSSID1), not the one failing to
> reassociate with (BSSID2).
>
> Interesting lines from the log look like this:
>
> wlan0: Considering connect request: reassociate: 1 selected:
> <BSSID2> bssid: <BBSID1> pending: 00:00:00:00:00:00 wpa_state:
> COMPLETED ssid=<SSID> current_ssid=<SSID>
> wlan0: Request association with <BSSID2>
> wlan0: Re-association to the same ESS
> ...
> wlan0: Add radio work 'connect'@0x7f9769c230
> wlan0: First radio work item in the queue - schedule start immediately
> wlan0: Starting radio work 'connect'@0x7f9769c230 after 0.000144
> second wait
> wlan0: Trying to associate with SSID <SSID>
> ...
> wlan0: State: COMPLETED -> ASSOCIATING
> ...
> Limit connection to BSSID <BBSID2> freq=5180 MHz based on scan results
> (bssid_set=1)
> ...
> nl80211: Connect (ifindex=6)
> * bssid=<BSSID2>
> * bssid_hint=<BSSID2>
> ...
> nl80211: Connect request send successfully
> wlan0: Setting authentication timeout: 10 sec 0 usec
> ...
> wlan0: Authentication with <BSSID1> timed out.
> Added BSSID <BSSID1> into blacklist
> TDLS: Remove peers on disassociation
> wlan0: WPA: Clear old PMK and PTK
> wlan0: Request to deauthenticate - bssid=<BSSID1>
> pending_bssid=00:00:00:00:00:00 reason=3 state=ASSOCIATING
>
> Question is, is this way of using the REASSOCIATE command to perform
> roam operation valid?
> I worked on a patch that solved this specific case but had to apply
> some hacks to reproduce it with hwsim tests. It would be great with
> some feedback on the scenario and attached patches. I think not all of
> them should really be applied but should help discussing the problem
> seen.
>
> Thanks
> Mikael Kanstrup
>
>
>
More information about the Hostap
mailing list