Root/package/madwifi/patches/359-disable_reassoc.patch

1Add a preliminary fix for the reassoc check, but disable reassoc entirely for now
2until we've figured out why it fails frequently.
3
4Signed-off-by: Felix Fietkau <nbd@openwrt.org>
5
6--- a/net80211/ieee80211_node.c
7+++ b/net80211/ieee80211_node.c
8@@ -599,10 +599,9 @@ ieee80211_ibss_merge(struct ieee80211_no
9 EXPORT_SYMBOL(ieee80211_ibss_merge);
10 
11 static __inline int
12-ssid_equal(const struct ieee80211_node *a, const struct ieee80211_node *b)
13+bssid_equal(const struct ieee80211_node *a, const struct ieee80211_node *b)
14 {
15- return (a->ni_esslen == b->ni_esslen &&
16- memcmp(a->ni_essid, b->ni_essid, a->ni_esslen) == 0);
17+ return (memcmp(a->ni_bssid, b->ni_bssid, IEEE80211_ADDR_LEN) == 0);
18 }
19 
20 /*
21@@ -634,8 +633,8 @@ ieee80211_sta_join1(struct ieee80211_nod
22      * Check if old+new node have the same ssid in which
23      * case we can reassociate when operating in sta mode.
24      */
25- canreassoc = ((obss != NULL) &&
26- (vap->iv_state == IEEE80211_S_RUN) && ssid_equal(obss, selbs));
27+ canreassoc = 0; /* ((obss != NULL) &&
28+ (vap->iv_state == IEEE80211_S_RUN) && bssid_equal(obss, selbs)); */
29     vap->iv_bss = selbs;
30     IEEE80211_ADDR_COPY(vap->iv_bssid, selbs->ni_bssid);
31     if (obss != NULL)
32

Archive Download this file



interactive