aboutsummaryrefslogtreecommitdiffstats
path: root/net/ieee80211
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2006-01-10 13:12:19 -0500
committerJohn W. Linville <linville@tuxdriver.com>2006-03-22 22:16:54 -0500
commit48b2e4ce690dfbf4097e89e6ce0861ab85fd89c9 (patch)
tree3949c3468eb260c1830685ca40714877d9ca6a2b /net/ieee80211
parent78e4f36e053b4d2c4623fdc1f6ac63f33d5b7c81 (diff)
[PATCH] softmac: check if disassociation is for us before processing it
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/ieee80211')
-rw-r--r--net/ieee80211/softmac/ieee80211softmac_assoc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/ieee80211/softmac/ieee80211softmac_assoc.c b/net/ieee80211/softmac/ieee80211softmac_assoc.c
index 9fd409099b53..dd5d5cf7189a 100644
--- a/net/ieee80211/softmac/ieee80211softmac_assoc.c
+++ b/net/ieee80211/softmac/ieee80211softmac_assoc.c
@@ -349,7 +349,10 @@ ieee80211softmac_handle_disassoc(struct net_device * dev,
349{ 349{
350 struct ieee80211softmac_device *mac = ieee80211_priv(dev); 350 struct ieee80211softmac_device *mac = ieee80211_priv(dev);
351 unsigned long flags; 351 unsigned long flags;
352 /* FIXME: check that this frame is from the right AP!! */ 352 if (memcmp(disassoc->header.addr2, mac->associnfo.bssid, ETH_ALEN))
353 return 0;
354 if (memcmp(disassoc->header.addr1, mac->dev->dev_addr, ETH_ALEN))
355 return 0;
353 dprintk(KERN_INFO PFX "got disassoc frame\n"); 356 dprintk(KERN_INFO PFX "got disassoc frame\n");
354 netif_carrier_off(dev); 357 netif_carrier_off(dev);
355 spin_lock_irqsave(&mac->lock, flags); 358 spin_lock_irqsave(&mac->lock, flags);