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 /net/mac80211 | |
| 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>
Diffstat (limited to 'net/mac80211')
| -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 0ade2679391..0b9898ac4d8 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, |
