Bugzilla – Bug 623
Cannot associate with open AP after being associated with encrypted AP
Last modified: 2005-10-09 10:14:38
You need to log in before you can comment on or make changes to this bug.
After being associated with an encrypted AP, cannot associate with open AP without reloading driver. I can move between different encryption types (802.1x (LEAP/WEP), WPA), however. I am using wpa_supplicant 0.38 to associate with the encrypted APs, but not the open ones. IIRC, this was a problem with the ipw2100 as well. Steps to reproduce: 1. Associate with encrypted AP using wpa_supplicant. 2. Attempt to associate with open AP. Driver will not associate. 3. Reload driver 4. Driver will associate with open AP.
I can confirm this bug.
Does attachment 340 [details] in bug 627 help?
Setting to needsmoredata till we get more feedback.
Shoot. Unfortunately, my class schedule does not permit me time to go where I'd need to go to test the above patch--can anyone else? I've applied the patch to my driver just in case I have unexpected free time to test this with.
Created an attachment (id=370) [details] Dmesg.out.1.0.2.with James's patch The problem is still exist in 1.0.2(with James's patch: attachment 340 [details]), and 1.0.3 SuSE 9.3(2.6.11-20a),2 APs, IBM T40, debug=0x43fff ipw2200-1.0.2 (with James's patch: attachment 340 [details]) ap1(linksys) configure with PSK ap2(linksys-g) is open step: 1. connect ap1 with wpa_supplicant(PSK); ping success 2. exit wpa_supplicant 3. iwconfig eth1 essid linksys-g 4. 'iwconfig' show network is not connected. In step 3, i tried iwconfig channel,iwconfig key ....etc, 'iwconfig' still show network not connected. But finally, I found if use 'iwconfig eth1 ap off' in step 3, the network will be start up, and of course reload driver can do the same job. The dmesg in attachment is recorded from step 2 to step 4. the above steps are same on 1.0.3.
Reopen this bug.
From Scrub: logics_sbux yes, we should add the sw_reset logics_sbux and basically have it clear out priv->config to the state of the driver when it was loaded logics_sbux and also reset the sec and wpa status
We need to add an iwpriv sw_reset that will clear out the configuration data back to how the driver was loaded. The problem we are seeing is that wpa_supplicant has configured the driver to use a static ESSID and a static AP. When the driver is then told to use a different static ESSID, it can't associate because it is now looking for the old static AP with the new static ESSID. iwpriv sw_reset should clear out the essid, ap, channel, and wpa parameters back to how the driver was loaded (honoring any module parameters)
Have submitted a bug to wpa_supplicant for this: http://hostap.epitest.fi/bugz/show_bug.cgi?id=41
1.0.4 has the reset feature, please verify.
With ipw2200-1.0.4 wpa_supplicant-0.3.8+1.0.4 didn't clear essid and ap; wpa_supplicant-0.3.9-rc2+1.0.4 clear everything except essid; So if wpa_supplicant-0.3.-rc2 used, only essid need to be set after disconnect with a WPA ap.
Mark as fixed.
Just wanted to say that I had a chance to test this yesterday and it works just fine. I logged into the LEAP network up on campus and then moved my laptop into the library where the open network is and wpa_supplicant automatically hopped over onto the library net. I have wpa_supplicant 0.3.8 and ipw2200 1.0.4. Great work, guys. :)