2010-03-30 06:37:41

by Jouni Malinen

[permalink] [raw]
Subject: [PATCH] ath9k: Do not indicate RX_FLAG_DECRYPTED for unprotected frames

mac80211 skips drop_unencrypted checks if the driver/firmware has
already taken care of this. In case of ath9k, we must not indicate
that the frame was decrypted if no decryption was actually done.

Signed-off-by: Jouni Malinen <[email protected]>

---
drivers/net/wireless/ath/ath9k/common.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

--- wireless-testing.orig/drivers/net/wireless/ath/ath9k/common.c 2010-03-29 23:32:13.000000000 -0700
+++ wireless-testing/drivers/net/wireless/ath/ath9k/common.c 2010-03-29 23:36:52.000000000 -0700
@@ -255,7 +255,8 @@ void ath9k_cmn_rx_skb_postprocess(struct

keyix = rx_stats->rs_keyix;

- if (!(keyix == ATH9K_RXKEYIX_INVALID) && !decrypt_error) {
+ if (!(keyix == ATH9K_RXKEYIX_INVALID) && !decrypt_error &&
+ ieee80211_has_protected(fc)) {
rxs->flag |= RX_FLAG_DECRYPTED;
} else if (ieee80211_has_protected(fc)
&& !decrypt_error && skb->len >= hdrlen + 4) {

--
Jouni Malinen PGP id EFC895FA