diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2010-05-30 08:53:43 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-06-03 14:10:45 -0400 |
commit | 08daecaead42b85b69b33d7d8429a93dfbf75b58 (patch) | |
tree | 920dce6666547bcf07ae6aad203e162a8ada9411 | |
parent | e0961f112cd88176acc6d1af6ca6352f85cdf993 (diff) |
mac80211: drop control frames after processing
After ieee80211_rx_h_ctrl() processing we only
want to process management (including action)
frames, so there's no point in letting control
frames continue.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | net/mac80211/rx.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 0ade26793918..0b9898ac4d87 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c | |||
@@ -1844,7 +1844,12 @@ ieee80211_rx_h_ctrl(struct ieee80211_rx_data *rx, struct sk_buff_head *frames) | |||
1844 | return RX_QUEUED; | 1844 | return RX_QUEUED; |
1845 | } | 1845 | } |
1846 | 1846 | ||
1847 | return RX_CONTINUE; | 1847 | /* |
1848 | * After this point, we only want management frames, | ||
1849 | * so we can drop all remaining control frames to | ||
1850 | * cooked monitor interfaces. | ||
1851 | */ | ||
1852 | return RX_DROP_MONITOR; | ||
1848 | } | 1853 | } |
1849 | 1854 | ||
1850 | static void ieee80211_process_sa_query_req(struct ieee80211_sub_if_data *sdata, | 1855 | static void ieee80211_process_sa_query_req(struct ieee80211_sub_if_data *sdata, |