summaryrefslogtreecommitdiffstats
path: root/net/mac80211/rx.c
diff options
context:
space:
mode:
authorKalle Valo <kalle.valo@nokia.com>2009-03-22 20:57:14 +0100
committerJohn W. Linville <linville@tuxdriver.com>2009-03-28 01:13:12 +0100
commit15b7b0629c8213905926394dc73d600e0ca250ce (patch)
tree184e9d02317e089034cc1cea2509af16f89cbaa0 /net/mac80211/rx.c
parentmac80211: decrease execution of the associated timer (diff)
downloadlinux-15b7b0629c8213905926394dc73d600e0ca250ce.tar.xz
linux-15b7b0629c8213905926394dc73d600e0ca250ce.zip
mac80211: track beacons separately from the rx path activity
Separate beacon and rx path tracking in preparation for the beacon filtering support. At the same time change ieee80211_associated() to look a bit simpler. Probe requests are now sent only after IEEE80211_PROBE_IDLE_TIME, which is now set to 60 seconds. Signed-off-by: Kalle Valo <kalle.valo@nokia.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to '')
-rw-r--r--net/mac80211/rx.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index dbfb28465354..eff59f36e8eb 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -850,7 +850,11 @@ ieee80211_rx_h_sta_process(struct ieee80211_rx_data *rx)
* Mesh beacons will update last_rx when if they are found to
* match the current local configuration when processed.
*/
- sta->last_rx = jiffies;
+ if (rx->sdata->vif.type == NL80211_IFTYPE_STATION &&
+ ieee80211_is_beacon(hdr->frame_control)) {
+ rx->sdata->u.mgd.last_beacon = jiffies;
+ } else
+ sta->last_rx = jiffies;
}
if (!(rx->flags & IEEE80211_RX_RA_MATCH))