diff options
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/ieee80211_i.h | 1 | ||||
-rw-r--r-- | net/mac80211/mlme.c | 15 |
2 files changed, 11 insertions, 5 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index 4e635e2fabdb..737fd0f07524 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h | |||
@@ -1041,6 +1041,7 @@ void ieee80211_sta_restart(struct ieee80211_sub_if_data *sdata); | |||
1041 | void ieee80211_sta_work(struct ieee80211_sub_if_data *sdata); | 1041 | void ieee80211_sta_work(struct ieee80211_sub_if_data *sdata); |
1042 | void ieee80211_sta_rx_queued_mgmt(struct ieee80211_sub_if_data *sdata, | 1042 | void ieee80211_sta_rx_queued_mgmt(struct ieee80211_sub_if_data *sdata, |
1043 | struct sk_buff *skb); | 1043 | struct sk_buff *skb); |
1044 | void ieee80211_sta_reset_conn_monitor(struct ieee80211_sub_if_data *sdata); | ||
1044 | 1045 | ||
1045 | /* IBSS code */ | 1046 | /* IBSS code */ |
1046 | void ieee80211_ibss_notify_scan_completed(struct ieee80211_local *local); | 1047 | void ieee80211_ibss_notify_scan_completed(struct ieee80211_local *local); |
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index bfb0eab5c26d..2d86a4d5e912 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -124,6 +124,15 @@ static void mod_beacon_timer(struct ieee80211_sub_if_data *sdata) | |||
124 | round_jiffies_up(jiffies + IEEE80211_BEACON_LOSS_TIME)); | 124 | round_jiffies_up(jiffies + IEEE80211_BEACON_LOSS_TIME)); |
125 | } | 125 | } |
126 | 126 | ||
127 | void ieee80211_sta_reset_conn_monitor(struct ieee80211_sub_if_data *sdata) | ||
128 | { | ||
129 | if (sdata->local->hw.flags & IEEE80211_HW_CONNECTION_MONITOR) | ||
130 | return; | ||
131 | |||
132 | mod_timer(&sdata->u.mgd.conn_mon_timer, | ||
133 | round_jiffies_up(jiffies + IEEE80211_CONNECTION_IDLE_TIME)); | ||
134 | } | ||
135 | |||
127 | static int ecw2cw(int ecw) | 136 | static int ecw2cw(int ecw) |
128 | { | 137 | { |
129 | return (1 << ecw) - 1; | 138 | return (1 << ecw) - 1; |
@@ -1018,11 +1027,7 @@ void ieee80211_sta_rx_notify(struct ieee80211_sub_if_data *sdata, | |||
1018 | if (is_multicast_ether_addr(hdr->addr1)) | 1027 | if (is_multicast_ether_addr(hdr->addr1)) |
1019 | return; | 1028 | return; |
1020 | 1029 | ||
1021 | if (sdata->local->hw.flags & IEEE80211_HW_CONNECTION_MONITOR) | 1030 | ieee80211_sta_reset_conn_monitor(sdata); |
1022 | return; | ||
1023 | |||
1024 | mod_timer(&sdata->u.mgd.conn_mon_timer, | ||
1025 | round_jiffies_up(jiffies + IEEE80211_CONNECTION_IDLE_TIME)); | ||
1026 | } | 1031 | } |
1027 | 1032 | ||
1028 | static void ieee80211_mgd_probe_ap_send(struct ieee80211_sub_if_data *sdata) | 1033 | static void ieee80211_mgd_probe_ap_send(struct ieee80211_sub_if_data *sdata) |