Search Linux Wireless

FW: [ipw3945-devel] iwl3945: disassociation from AP (reason=4) andtimeout, a solution

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Forwarding this to linux-wireless where there is more knowledge about
association. The attached patch is also to the mac80211 stack, so we
need to involve the mac80211 maintainer.

Reinette

On Friday, March 28, 2008 4:00 PM, Andres Bertens  wrote:

> Hi,
> 
> Recently I moved from ipw3945 to iwl3945 and I was having an AP
> association timeout after some inactivity.
> Card is Intel 3945bg, router is DLink DI524, driver is
> compat-wireless-2.6 (2008-03-28) or older and mode is (WEP, open) on
> linux-2.6.24.4. It does not recover magically.
> 
> The trace is:
> 
> wlan0: RX disassociation from 00:17:9a:63:d2:21 (reason=4)
> wlan0: disassociated
> wlan0: associate with AP 00:17:9a:63:d2:21
> wlan0: RX ReassocResp from 00:17:9a:63:d2:21 (capab=0x431 status=17
> aid=1) wlan0: AP denied association (code=17)
> wlan0: associate with AP 00:17:9a:63:d2:21
> wlan0: RX AssocResp from 00:17:9a:63:d2:21 (capab=0x431 status=17
> aid=1073) wlan0: AP denied association (code=17)
> wlan0: associate with AP 00:17:9a:63:d2:21
> wlan0: RX AssocResp from 00:17:9a:63:d2:21 (capab=0x431 status=17
> aid=1073) wlan0: AP denied association (code=17)
> wlan0: association with AP 00:17:9a:63:d2:21 timed out
> 
> After browsing the internet, I found a lot of people with the same
> problem and no solution. So, I dived into the code and found a simple
> solution: ignore disassociation. When a new request arrives to the
> wireless, a reconnection is done automatically.
> 
> I patched the code, modifying net/mac80211/ieee80211_sta.c, and trace
> is as follow:
> 
> wlan0: RX disassociation for reason=4 received from 00:17:9a:63:d2:21
> - ignored
> wlan0: RX deauthentication from 00:17:9a:63:d2:21 (reason=6)
> wlan0: deauthenticated
> wlan0: authenticate with AP 00:17:9a:63:d2:21
> wlan0: RX authentication from 00:17:9a:63:d2:21 (alg=0 transaction=2
> status=0)
> wlan0: authenticated
> wlan0: associate with AP 00:17:9a:63:d2:21
> wlan0: RX ReassocResp from 00:17:9a:63:d2:21 (capab=0x431 status=0
> aid=2) wlan0: associated
> 
> and these entries repeats in time. As you can see, the disassociation
> still ocurrs but a new request afterwards generates a deauthentication
> (reason=6) and a reconnection takes place (transparent to the user).
> 
> Attached is patch to compat-wireless-2.6 (2008-03-28).  Please note
> that this is for iwl3945+dlink+WEP combination (according to other
> people, it seems to work for other combinations).
> 
> Hope this help.
> 
> Regards,
> Andres Bertens

	
diff -Naur compat-wireless-2008-03-28/net/mac80211/ieee80211_sta.c compat-wireless-2008-03-28-new/net/mac80211/ieee80211_sta.c
--- compat-wireless-2008-03-28/net/mac80211/ieee80211_sta.c	2008-03-28 01:14:15.000000000 -0400
+++ compat-wireless-2008-03-28-new/net/mac80211/ieee80211_sta.c	2008-03-28 16:19:57.000000000 -0400
@@ -1809,6 +1809,15 @@
 
 	reason_code = le16_to_cpu(mgmt->u.disassoc.reason_code);
 
+/* ABU */
+	if( reason_code == 4 ) {
+		printk(KERN_DEBUG "%s: RX disassociation for reason=4 "
+			"received from %s - ignored\n",
+			dev->name, print_mac(mac, mgmt->sa));
+		return;
+	}
+/* ABU */
+
 	printk(KERN_DEBUG "%s: RX disassociation from %s"
 	       " (reason=%d)\n",
 	       dev->name, print_mac(mac, mgmt->sa), reason_code);

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Ipw3945-devel mailing list
Ipw3945-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/ipw3945-devel

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux