diff options
author | Luciano Coelho <coelho@ti.com> | 2011-05-09 12:15:04 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-05-10 15:54:54 -0400 |
commit | 306fe9384f06d31219778cece2d3c646146e7bb6 (patch) | |
tree | 3bbc63e2923d5cf71767a43eadcda2d47b334e61 | |
parent | 729da390034d04ff1b3a3f188dfb04a54f458e35 (diff) |
mac80211: don't drop frames where skb->len < 24 in ieee80211_scan_rx()
This seems to be a leftover from the old days, when we didn't support
any frames that didn't contain the full ieee802.11 header. This is
not the case anymore. It does not cause problems now, because they
are only dropped during scan. But when scheduled scans get merged,
this would become a problem because we would drop all small frames
while scheduled scan is running.
To fix this, return RX_CONTINUE instead of RX_DROP_MONITOR.
Cc: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Luciano Coelho <coelho@ti.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | net/mac80211/scan.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/scan.c b/net/mac80211/scan.c index 489b6ad200d4..8acce724f0dc 100644 --- a/net/mac80211/scan.c +++ b/net/mac80211/scan.c | |||
@@ -170,7 +170,7 @@ ieee80211_scan_rx(struct ieee80211_sub_if_data *sdata, struct sk_buff *skb) | |||
170 | return RX_CONTINUE; | 170 | return RX_CONTINUE; |
171 | 171 | ||
172 | if (skb->len < 24) | 172 | if (skb->len < 24) |
173 | return RX_DROP_MONITOR; | 173 | return RX_CONTINUE; |
174 | 174 | ||
175 | presp = ieee80211_is_probe_resp(fc); | 175 | presp = ieee80211_is_probe_resp(fc); |
176 | if (presp) { | 176 | if (presp) { |