iwlwifi: mvm: Don't install CMAC/GMAC key in AP mode
Due to a missing break, the management multicast key was installed even though we don't really support it. Fix that, so mac80211 would know that it should protect frames in software. Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Link: https://lore.kernel.org/r/iwlwifi.20200926002540.019a64e96d44.I609a995611ac5286e442cd54f764eaf4a7249ac0@changeid Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
This commit is contained in:
parent
903b3f9bad
commit
a1c2ff3024
@ -3438,15 +3438,16 @@ static int __iwl_mvm_mac_set_key(struct ieee80211_hw *hw,
|
|||||||
*/
|
*/
|
||||||
if (key->cipher == WLAN_CIPHER_SUITE_AES_CMAC ||
|
if (key->cipher == WLAN_CIPHER_SUITE_AES_CMAC ||
|
||||||
key->cipher == WLAN_CIPHER_SUITE_BIP_GMAC_128 ||
|
key->cipher == WLAN_CIPHER_SUITE_BIP_GMAC_128 ||
|
||||||
key->cipher == WLAN_CIPHER_SUITE_BIP_GMAC_256)
|
key->cipher == WLAN_CIPHER_SUITE_BIP_GMAC_256) {
|
||||||
ret = -EOPNOTSUPP;
|
ret = -EOPNOTSUPP;
|
||||||
else
|
break;
|
||||||
ret = 0;
|
}
|
||||||
|
|
||||||
if (key->cipher != WLAN_CIPHER_SUITE_GCMP &&
|
if (key->cipher != WLAN_CIPHER_SUITE_GCMP &&
|
||||||
key->cipher != WLAN_CIPHER_SUITE_GCMP_256 &&
|
key->cipher != WLAN_CIPHER_SUITE_GCMP_256 &&
|
||||||
!iwl_mvm_has_new_tx_api(mvm)) {
|
!iwl_mvm_has_new_tx_api(mvm)) {
|
||||||
key->hw_key_idx = STA_KEY_IDX_INVALID;
|
key->hw_key_idx = STA_KEY_IDX_INVALID;
|
||||||
|
ret = 0;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3462,6 +3463,8 @@ static int __iwl_mvm_mac_set_key(struct ieee80211_hw *hw,
|
|||||||
|
|
||||||
if (i >= ARRAY_SIZE(mvmvif->ap_early_keys))
|
if (i >= ARRAY_SIZE(mvmvif->ap_early_keys))
|
||||||
ret = -ENOSPC;
|
ret = -ENOSPC;
|
||||||
|
else
|
||||||
|
ret = 0;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user