aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211
diff options
context:
space:
mode:
authorWill Hawkins <hawkinsw@opentechinstitute.org>2012-06-19 17:59:13 -0400
committerJohannes Berg <johannes.berg@intel.com>2012-06-20 20:03:42 +0200
commit452a6d22615bb8262a932b362f41fc5d89f03293 (patch)
tree7eb8d44a25956a2ddceaa0331fa371b17a89ec8d /net/mac80211
parentmac80211: Track auth frame registrations on IBSS ifaces (diff)
downloadlinux-dev-452a6d22615bb8262a932b362f41fc5d89f03293.tar.xz
linux-dev-452a6d22615bb8262a932b362f41fc5d89f03293.zip
mac80211: send auth in IBSS only if userspace isn't handling it
Check the auth frame registration count before sending "open system" authentication messages when a new station registers on a particular IBSS network. This stops us from sending out multiple authentication messages with different authentication algorithms. Signed-off-by: Will Hawkins <hawkinsw@opentechinstitute.org> [reword commit message a bit] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211')
-rw-r--r--net/mac80211/ibss.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/ibss.c b/net/mac80211/ibss.c
index 725cb4be229d..ff46ff424941 100644
--- a/net/mac80211/ibss.c
+++ b/net/mac80211/ibss.c
@@ -279,7 +279,7 @@ static struct sta_info *ieee80211_ibss_finish_sta(struct sta_info *sta,
/* If it fails, maybe we raced another insertion? */
if (sta_info_insert_rcu(sta))
return sta_info_get(sdata, addr);
- if (auth) {
+ if (auth && !sdata->u.ibss.auth_frame_registrations) {
ibss_vdbg("TX Auth SA=%pM DA=%pM BSSID=%pM (auth_transaction=1)\n",
sdata->vif.addr, sdata->u.ibss.bssid, addr);
ieee80211_send_auth(sdata, 1, WLAN_AUTH_OPEN, NULL, 0,