Root/package/madwifi/patches/391-vap_auth.patch

1--- a/net80211/ieee80211_input.c
2+++ b/net80211/ieee80211_input.c
3@@ -1375,7 +1375,7 @@ ieee80211_auth_open(struct ieee80211_nod
4         vap->iv_stats.is_rx_bad_auth++; /* XXX maybe a unique error? */
5         if (vap->iv_opmode == IEEE80211_M_HOSTAP) {
6             if (ni == vap->iv_bss) {
7- ni = ieee80211_dup_bss(vap, wh->i_addr2, 0);
8+ ni = ieee80211_dup_bss(vap, wh->i_addr2, 1);
9                 if (ni == NULL)
10                     return;
11                 tmpnode = 1;
12@@ -1763,6 +1763,8 @@ ieee80211_ssid_mismatch(struct ieee80211
13 }
14 
15 #define IEEE80211_VERIFY_SSID(_ni, _ssid) do { \
16+ if ((_ni)->ni_esslen == 0) \
17+ return; \
18     if ((_ssid)[1] != 0 && \
19         ((_ssid)[1] != (_ni)->ni_esslen || \
20         memcmp((_ssid) + 2, (_ni)->ni_essid, (_ssid)[1]) != 0)) { \
21@@ -1777,6 +1779,8 @@ ieee80211_ssid_mismatch(struct ieee80211
22 } while (0)
23 #else /* !IEEE80211_DEBUG */
24 #define IEEE80211_VERIFY_SSID(_ni, _ssid) do { \
25+ if ((_ni)->ni_esslen == 0) \
26+ return; \
27     if ((_ssid)[1] != 0 && \
28         ((_ssid)[1] != (_ni)->ni_esslen || \
29         memcmp((_ssid) + 2, (_ni)->ni_essid, (_ssid)[1]) != 0)) { \
30

Archive Download this file



interactive