diff options
Diffstat (limited to 'drivers/net/wireless/ath/ath5k/mac80211-ops.c')
-rw-r--r-- | drivers/net/wireless/ath/ath5k/mac80211-ops.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath5k/mac80211-ops.c b/drivers/net/wireless/ath/ath5k/mac80211-ops.c index df61a09adb6d..7a28538e6e05 100644 --- a/drivers/net/wireless/ath/ath5k/mac80211-ops.c +++ b/drivers/net/wireless/ath/ath5k/mac80211-ops.c | |||
@@ -489,6 +489,9 @@ ath5k_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd, | |||
489 | if (ath5k_modparam_nohwcrypt) | 489 | if (ath5k_modparam_nohwcrypt) |
490 | return -EOPNOTSUPP; | 490 | return -EOPNOTSUPP; |
491 | 491 | ||
492 | if (key->flags & IEEE80211_KEY_FLAG_RX_MGMT) | ||
493 | return -EOPNOTSUPP; | ||
494 | |||
492 | if (vif->type == NL80211_IFTYPE_ADHOC && | 495 | if (vif->type == NL80211_IFTYPE_ADHOC && |
493 | (key->cipher == WLAN_CIPHER_SUITE_TKIP || | 496 | (key->cipher == WLAN_CIPHER_SUITE_TKIP || |
494 | key->cipher == WLAN_CIPHER_SUITE_CCMP) && | 497 | key->cipher == WLAN_CIPHER_SUITE_CCMP) && |
@@ -523,7 +526,7 @@ ath5k_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd, | |||
523 | if (key->cipher == WLAN_CIPHER_SUITE_TKIP) | 526 | if (key->cipher == WLAN_CIPHER_SUITE_TKIP) |
524 | key->flags |= IEEE80211_KEY_FLAG_GENERATE_MMIC; | 527 | key->flags |= IEEE80211_KEY_FLAG_GENERATE_MMIC; |
525 | if (key->cipher == WLAN_CIPHER_SUITE_CCMP) | 528 | if (key->cipher == WLAN_CIPHER_SUITE_CCMP) |
526 | key->flags |= IEEE80211_KEY_FLAG_SW_MGMT; | 529 | key->flags |= IEEE80211_KEY_FLAG_SW_MGMT_TX; |
527 | ret = 0; | 530 | ret = 0; |
528 | } | 531 | } |
529 | break; | 532 | break; |