diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2009-10-30 07:55:03 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-10-30 16:50:39 -0400 |
commit | 22403def134e2c1017cb04ae9129a38e841b2d8c (patch) | |
tree | b513210b85fad90cd4309162cfbf30972bf996fa /net/mac80211/rx.c | |
parent | e7d17cf4f7e1b8d06575b6db2397c99c151674b8 (diff) |
mac80211: also drop qos-nullfunc frames silently
We drop nullfunc frames, but not qos-nullfunc frames,
even though those could be used for PS state control
as well.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r-- | net/mac80211/rx.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index f862399f7ce..51cb8bc3af8 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c | |||
@@ -886,12 +886,17 @@ ieee80211_rx_h_sta_process(struct ieee80211_rx_data *rx) | |||
886 | } | 886 | } |
887 | } | 887 | } |
888 | 888 | ||
889 | /* Drop data::nullfunc frames silently, since they are used only to | 889 | /* |
890 | * control station power saving mode. */ | 890 | * Drop (qos-)data::nullfunc frames silently, since they |
891 | if (ieee80211_is_nullfunc(hdr->frame_control)) { | 891 | * are used only to control station power saving mode. |
892 | */ | ||
893 | if (ieee80211_is_nullfunc(hdr->frame_control) || | ||
894 | ieee80211_is_qos_nullfunc(hdr->frame_control)) { | ||
892 | I802_DEBUG_INC(rx->local->rx_handlers_drop_nullfunc); | 895 | I802_DEBUG_INC(rx->local->rx_handlers_drop_nullfunc); |
893 | /* Update counter and free packet here to avoid counting this | 896 | /* |
894 | * as a dropped packed. */ | 897 | * Update counter and free packet here to avoid |
898 | * counting this as a dropped packed. | ||
899 | */ | ||
895 | sta->rx_packets++; | 900 | sta->rx_packets++; |
896 | dev_kfree_skb(rx->skb); | 901 | dev_kfree_skb(rx->skb); |
897 | return RX_QUEUED; | 902 | return RX_QUEUED; |