wpa_supplicant fails during reassociate

Rod Schmidt rschmidt at frii.net
Tue Feb 28 18:59:46 EST 2012


On an Intel Core i5-2500k processor and Intel DP67BG motherboard with an 
included Ralink 2870
usb wireless dongle, wpa_supplicant is unable to re-authenticate after a 
disconnect. It is configured
for WPA2 and uses the nl80211 backend. The device driver is 
rt2880usb/rt2800lib/rt2x00usb/rt2x00lib from Serialmonkey (part of the 
mainline kernel package)and the system is linux-2.6.37.6 x86_64 from
the slackware64-13.37 distribution.

Periodically, the AP sends a disconnect request, reason=4(inactivity) 
and wpa_supplicant tries to reconnect. Comparing the original, 
successful connection to the failed reconnect, events diverge when 
nl80211 sends an authentication request.

In the successful case, it receives an MLME event 37 with 30 bytes of 
data after about 13 milliseconds, and continues through authentication:

1330465536.426985: nl80211: Authentication request send successfully
1330465536.426989: RTM_NEWLINK: operstate=0 ifi_flags=0x1003 ([UP])
1330465536.426991: RTM_NEWLINK, IFLA_IFNAME: Interface 'wlan0' added
1330465536.439926: nl80211: Event message available
1330465536.439938: nl80211: MLME event 37
1330465536.439941: nl80211: MLME event frame - hexdump(len=30): b0 00 02 
01 e0 b9 a5 e1 ec fd 00 1e a7 a5 b5 70 00 1e a7 a5 b5 70 c0 76 00 00 02 
00 00 00

In the failure, it gets an event 37 with a timeout after about 600 
milliseconds. It then goes back to scanning, etc, and never recovers. I 
have a full "-ddt" log of the process, if someone really wants to look 
at it.

1330466113.825926: nl80211: Authentication request send successfully
1330466113.825930: RTM_NEWLINK: operstate=0 ifi_flags=0x1003 ([UP])
1330466113.825932: RTM_NEWLINK, IFLA_IFNAME: Interface 'wlan0' added
1330466114.443269: nl80211: Event message available
1330466114.443298: nl80211: MLME event 37; timeout with 00:1e:a7:a5:b5:70
1330466114.443302: SME: Authentication timed out

So where did the MLME data go? The archives have some discussion of lost 
packets due to kernel issues around "flooding", but these are 5-year-old 
issues. I'd appreciate some help.

I have a tourniquet for the wound, in the form of a wpa_supplicant 
wrapper written in Tcl/expect that notices the repeated retries, 
terminates wpa_supplicant and restarts it. This works every time, but is 
not really a long term solution to the problem!!

Rod


More information about the HostAP mailing list