summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorMing Lei2010-02-06 15:38:23 +0100
committerJohn W. Linville2010-02-08 22:50:59 +0100
commit733da37dab72de6b3f8b0c56b5cdea322f18a684 (patch)
tree1d87aa2939b2734f9350dd9a6d99784ab901370d /drivers
parentmac80211: fix deauth race (diff)
downloadkernel-qcow2-linux-733da37dab72de6b3f8b0c56b5cdea322f18a684.tar.gz
kernel-qcow2-linux-733da37dab72de6b3f8b0c56b5cdea322f18a684.tar.xz
kernel-qcow2-linux-733da37dab72de6b3f8b0c56b5cdea322f18a684.zip
ath9k: fix keycache leak in split tkip case
If split tkip key is used, ath_delete_key should delete rx key and rx mic key. This patch fixes the leak of hw keycache in the case. Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/ath/ath9k/main.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
index 40da7a6e4b6b..9c8f925c2093 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -809,6 +809,7 @@ static void ath_key_delete(struct ath_common *common, struct ieee80211_key_conf
clear_bit(key->hw_key_idx + 64, common->keymap);
if (common->splitmic) {
+ ath9k_hw_keyreset(ah, key->hw_key_idx + 32);
clear_bit(key->hw_key_idx + 32, common->keymap);
clear_bit(key->hw_key_idx + 64 + 32, common->keymap);
}