mirror of
git://git.openwrt.org/openwrt/openwrt.git
synced 2024-12-14 10:54:47 +00:00
dec207d4eb
SVN-Revision: 13096
32 lines
1.2 KiB
Diff
32 lines
1.2 KiB
Diff
Add a preliminary fix for the reassoc check, but disable reassoc entirely for now
|
|
until we've figured out why it fails frequently.
|
|
|
|
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
|
|
|
--- a/net80211/ieee80211_node.c
|
|
+++ b/net80211/ieee80211_node.c
|
|
@@ -599,10 +599,9 @@ ieee80211_ibss_merge(struct ieee80211_no
|
|
EXPORT_SYMBOL(ieee80211_ibss_merge);
|
|
|
|
static __inline int
|
|
-ssid_equal(const struct ieee80211_node *a, const struct ieee80211_node *b)
|
|
+bssid_equal(const struct ieee80211_node *a, const struct ieee80211_node *b)
|
|
{
|
|
- return (a->ni_esslen == b->ni_esslen &&
|
|
- memcmp(a->ni_essid, b->ni_essid, a->ni_esslen) == 0);
|
|
+ return (memcmp(a->ni_bssid, b->ni_bssid, IEEE80211_ADDR_LEN) == 0);
|
|
}
|
|
|
|
/*
|
|
@@ -634,8 +633,8 @@ ieee80211_sta_join1(struct ieee80211_nod
|
|
* Check if old+new node have the same ssid in which
|
|
* case we can reassociate when operating in sta mode.
|
|
*/
|
|
- canreassoc = ((obss != NULL) &&
|
|
- (vap->iv_state == IEEE80211_S_RUN) && ssid_equal(obss, selbs));
|
|
+ canreassoc = 0; /* ((obss != NULL) &&
|
|
+ (vap->iv_state == IEEE80211_S_RUN) && bssid_equal(obss, selbs)); */
|
|
vap->iv_bss = selbs;
|
|
IEEE80211_ADDR_COPY(vap->iv_bssid, selbs->ni_bssid);
|
|
if (obss != NULL)
|