aboutsummaryrefslogtreecommitdiffstats
path: root/package/madwifi/patches-r3776/322-ignore_broken_bssid.patch
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2008-07-17 02:30:08 +0000
committerFelix Fietkau <nbd@openwrt.org>2008-07-17 02:30:08 +0000
commitba605c7bf0305cb42febac3e7d74fd7d80796a72 (patch)
tree547d05d8319b3931a4fa1e5b1a5cbd543af52361 /package/madwifi/patches-r3776/322-ignore_broken_bssid.patch
parentc9694199b4d8289f52bf27b9d4e5e2bc78b3e72e (diff)
downloadmaster-187ad058-ba605c7bf0305cb42febac3e7d74fd7d80796a72.tar.gz
master-187ad058-ba605c7bf0305cb42febac3e7d74fd7d80796a72.tar.bz2
master-187ad058-ba605c7bf0305cb42febac3e7d74fd7d80796a72.zip
huge madwifi update (work in progress, disabled by default, compiles but breaks at run time)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@11851 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/madwifi/patches-r3776/322-ignore_broken_bssid.patch')
-rw-r--r--package/madwifi/patches-r3776/322-ignore_broken_bssid.patch20
1 files changed, 20 insertions, 0 deletions
diff --git a/package/madwifi/patches-r3776/322-ignore_broken_bssid.patch b/package/madwifi/patches-r3776/322-ignore_broken_bssid.patch
new file mode 100644
index 0000000000..f185dbfd25
--- /dev/null
+++ b/package/madwifi/patches-r3776/322-ignore_broken_bssid.patch
@@ -0,0 +1,20 @@
+Some misconfigured APs broadcast NULL BSSIDs, which can confuse the STA
+Ignore those when scanning.
+
+Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+
+Index: madwifi-trunk-r3776/net80211/ieee80211_scan_sta.c
+===================================================================
+--- madwifi-trunk-r3776.orig/net80211/ieee80211_scan_sta.c 2008-07-17 04:02:41.000000000 +0200
++++ madwifi-trunk-r3776/net80211/ieee80211_scan_sta.c 2008-07-17 04:03:54.000000000 +0200
+@@ -242,6 +242,10 @@
+ struct ieee80211_scan_entry *ise;
+ int hash;
+
++ /* workaround for broken APs that broadcast NULL BSSIDs */
++ if (memcmp(wh->i_addr3, "\x00\x00\x00\x00\x00\x00", 6) == 0)
++ return 0;
++
+ hash = STA_HASH(macaddr);
+ SCAN_STA_LOCK_IRQ(st);
+ LIST_FOREACH(se, &st->st_hash[hash], se_hash)