kernel-fxtec-pro1x/net/mac80211
Jan-Espen Pettersen 8ab65b03b7 mac80211: don't send empty extended rates IE
The association request includes a list of supported data rates.

802.11b: 4 supported rates.
802.11g: 12 (8 + 4) supported rates.
802.11a: 8 supported rates.

The rates tag of the assoc request has room for only 8 rates. In case of
802.11g an extended rate tag is appended. However in net/wireless/mlme.c
an extended (empty) rate tag is also appended if the number of rates is
exact 8. This empty (length=0) extended rates tag causes some APs to
deny association with code 18 (unsupported rates). These APs include my
ZyXEL G-570U, and according to Tomas Winkler som Cisco APs.

'If count == 8' has been used to check for the need for an extended rates
tag. But count would also be equal to 8 if the for loop exited because of
no more supported rates. Therefore a check for count being less than
rates_len would seem more correct.

Thanks to:
 * Dan Williams for newbie guidance
 * Tomas Winkler for confirming the problem

Signed-off-by: Jan-Espen Pettersen <sigsegv@radiotube.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2008-08-26 20:06:33 -04:00
..
aes_ccm.c mac80211: aes_ccm.c remove crypto wrapper and extra args 2008-07-08 14:16:02 -04:00
aes_ccm.h mac80211: pass scratch buffer directly, remove additional pointers 2008-07-08 14:16:02 -04:00
cfg.c mac80211: fix cfg80211 hooks for master interface 2008-07-29 16:55:08 -04:00
cfg.h [MAC80211]: rename ieee80211_cfg.h to cfg.h 2007-10-10 16:52:34 -07:00
debugfs.c mac80211: revamp virtual interface handling 2008-07-14 14:30:07 -04:00
debugfs.h [MAC80211]: Add debugfs attributes. 2007-05-05 11:46:38 -07:00
debugfs_key.c mac80211: add a struct to hold tkip context 2008-05-21 21:47:49 -04:00
debugfs_key.h mac80211: fix key vs. sta locking problems 2008-04-08 16:44:45 -04:00
debugfs_netdev.c mac80211: Fix debugfs file add/del for netdev 2008-08-26 20:06:33 -04:00
debugfs_netdev.h mac80211: revamp virtual interface handling 2008-07-14 14:30:07 -04:00
debugfs_sta.c mac80211: remove channel use statistics 2008-05-21 21:48:17 -04:00
debugfs_sta.h mac80211: RCU-ify STA info structure access 2008-03-06 15:30:46 -05:00
event.c [NET]: Introduce and use print_mac() and DECLARE_MAC_BUF() 2007-10-10 16:51:42 -07:00
ieee80211_i.h mac80211: Fix debugfs file add/del for netdev 2008-08-26 20:06:33 -04:00
iface.c mac80211: fix TX sequence numbers 2008-07-14 14:52:57 -04:00
Kconfig mac80211: Reimplement WME using ->select_queue(). 2008-07-17 19:21:12 -07:00
key.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-06-28 01:19:40 -07:00
key.h mac80211: Let drivers have access to TKIP key offets for TX and RX MIC 2008-06-27 09:09:17 -04:00
led.c mac80211: rename files 2008-04-08 16:44:45 -04:00
led.h mac80211: rename files 2008-04-08 16:44:45 -04:00
main.c mac80211: keep mesh ifaces in allmulti mode 2008-08-07 09:49:04 -04:00
Makefile mac80211: Reimplement WME using ->select_queue(). 2008-07-17 19:21:12 -07:00
mesh.c net/mac80211/mesh.c: correct the argument to __mesh_table_free 2008-08-26 20:06:32 -04:00
mesh.h mac80211: fix use of skb->cb for mesh forwarding 2008-08-07 09:49:04 -04:00
mesh_hwmp.c mac80211: fix use of skb->cb for mesh forwarding 2008-08-07 09:49:04 -04:00
mesh_pathtbl.c mac80211: fix use of skb->cb for mesh forwarding 2008-08-07 09:49:04 -04:00
mesh_plink.c mac80211: proper STA info locking 2008-05-14 16:29:34 -04:00
michael.c mac80211: remove ieee80211_get_hdr_info 2008-07-08 14:16:01 -04:00
michael.h mac80211: remove ieee80211_get_hdr_info 2008-07-08 14:16:01 -04:00
mlme.c mac80211: don't send empty extended rates IE 2008-08-26 20:06:33 -04:00
rate.c mac80211: use rate index in TX control 2008-05-21 21:48:09 -04:00
rate.h build algorithms into the mac80211 module 2008-06-30 17:37:34 -04:00
rc80211_pid.h Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-07-14 20:23:54 -07:00
rc80211_pid_algo.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 2008-07-14 20:40:34 -07:00
rc80211_pid_debugfs.c mac80211: move TX info into skb->cb 2008-05-21 21:48:11 -04:00
rx.c mac80211: fix use of skb->cb for mesh forwarding 2008-08-07 09:49:04 -04:00
sta_info.c mac80211: make master netdev handling sane 2008-07-14 14:30:06 -04:00
sta_info.h mac80211: fix TX sequence numbers 2008-07-14 14:52:57 -04:00
tkip.c mac80211: Let drivers have access to TKIP key offets for TX and RX MIC 2008-06-27 09:09:17 -04:00
tkip.h mac80211: tkip.c consolidate tkip IV writing in helper 2008-06-14 12:18:13 -04:00
tx.c mac80211: fix use of skb->cb for mesh forwarding 2008-08-07 09:49:04 -04:00
util.c mac80211: fix fragmentation kludge 2008-08-01 15:31:33 -04:00
wep.c mac80211: return correct error return from ieee80211_wep_init 2008-07-29 16:55:07 -04:00
wep.h mac80211: a few code cleanups 2008-05-07 15:02:11 -04:00
wext.c mac80211: revamp beacon configuration 2008-07-14 14:30:07 -04:00
wme.c mac80211: Use queue_lock() in ieee80211_ht_agg_queue_remove(). 2008-08-02 23:25:50 -07:00
wme.h mac80211: Reimplement WME using ->select_queue(). 2008-07-17 19:21:12 -07:00
wpa.c mac80211: pass scratch buffer directly, remove additional pointers 2008-07-08 14:16:02 -04:00
wpa.h mac80211: split ieee80211_txrx_data 2008-03-06 15:30:46 -05:00