瀏覽代碼

mac80211: Drop out of associated state if link is lost

There is no point in staying in IEEE80211_ASSOCIATED if there is no
sta_info entry to receive frames with.

Signed-off-by: Michael Wu <flamingice@sourmilk.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Michael Wu 17 年之前
父節點
當前提交
2d192d9552
共有 1 個文件被更改,包括 2 次插入6 次删除
  1. 2 6
      net/mac80211/ieee80211_sta.c

+ 2 - 6
net/mac80211/ieee80211_sta.c

@@ -808,12 +808,8 @@ static void ieee80211_associated(struct net_device *dev,
 		sta_info_put(sta);
 		sta_info_put(sta);
 	}
 	}
 	if (disassoc) {
 	if (disassoc) {
-		union iwreq_data wrqu;
-		memset(wrqu.ap_addr.sa_data, 0, ETH_ALEN);
-		wrqu.ap_addr.sa_family = ARPHRD_ETHER;
-		wireless_send_event(dev, SIOCGIWAP, &wrqu, NULL);
-		mod_timer(&ifsta->timer, jiffies +
-				      IEEE80211_MONITORING_INTERVAL + 30 * HZ);
+		ifsta->state = IEEE80211_DISABLED;
+		ieee80211_set_associated(dev, ifsta, 0);
 	} else {
 	} else {
 		mod_timer(&ifsta->timer, jiffies +
 		mod_timer(&ifsta->timer, jiffies +
 				      IEEE80211_MONITORING_INTERVAL);
 				      IEEE80211_MONITORING_INTERVAL);