Lines Matching refs:keyconf
14 struct ieee80211_key_conf *keyconf) in iwl_mvm_get_sec_sta_mask() argument
21 if (keyconf->link_id >= 0) { in iwl_mvm_get_sec_sta_mask()
22 link_info = mvmvif->link[keyconf->link_id]; in iwl_mvm_get_sec_sta_mask()
29 !(keyconf->flags & IEEE80211_KEY_FLAG_PAIRWISE)) { in iwl_mvm_get_sec_sta_mask()
31 if (keyconf->keyidx >= 4) in iwl_mvm_get_sec_sta_mask()
50 if (!sta && (keyconf->link_id >= 0 || !ieee80211_vif_is_mld(vif))) in iwl_mvm_get_sec_sta_mask()
56 return iwl_mvm_sta_fw_id_mask(mvm, sta, keyconf->link_id); in iwl_mvm_get_sec_sta_mask()
62 struct ieee80211_key_conf *keyconf) in iwl_mvm_get_sec_flags() argument
65 bool pairwise = keyconf->flags & IEEE80211_KEY_FLAG_PAIRWISE; in iwl_mvm_get_sec_flags()
66 bool igtk = keyconf->keyidx == 4 || keyconf->keyidx == 5; in iwl_mvm_get_sec_flags()
74 switch (keyconf->cipher) { in iwl_mvm_get_sec_flags()
182 struct ieee80211_key_conf *keyconf) in iwl_mvm_mld_send_key() argument
188 .u.add.key_id = cpu_to_le32(keyconf->keyidx), in iwl_mvm_mld_send_key()
190 .u.add.tx_seq = cpu_to_le64(atomic64_read(&keyconf->tx_pn)), in iwl_mvm_mld_send_key()
195 if (keyconf->cipher == WLAN_CIPHER_SUITE_WEP40 || in iwl_mvm_mld_send_key()
196 keyconf->cipher == WLAN_CIPHER_SUITE_WEP104) in iwl_mvm_mld_send_key()
199 if (WARN_ON(keyconf->keylen > max_key_len)) in iwl_mvm_mld_send_key()
205 if (keyconf->cipher == WLAN_CIPHER_SUITE_WEP40 || in iwl_mvm_mld_send_key()
206 keyconf->cipher == WLAN_CIPHER_SUITE_WEP104) in iwl_mvm_mld_send_key()
207 memcpy(cmd.u.add.key + IWL_SEC_WEP_KEY_OFFSET, keyconf->key, in iwl_mvm_mld_send_key()
208 keyconf->keylen); in iwl_mvm_mld_send_key()
210 memcpy(cmd.u.add.key, keyconf->key, keyconf->keylen); in iwl_mvm_mld_send_key()
212 if (keyconf->cipher == WLAN_CIPHER_SUITE_TKIP) { in iwl_mvm_mld_send_key()
214 keyconf->key + NL80211_TKIP_DATA_OFFSET_RX_MIC_KEY, in iwl_mvm_mld_send_key()
217 keyconf->key + NL80211_TKIP_DATA_OFFSET_TX_MIC_KEY, in iwl_mvm_mld_send_key()
229 if (keyconf->cipher == WLAN_CIPHER_SUITE_WEP40 || in iwl_mvm_mld_send_key()
230 keyconf->cipher == WLAN_CIPHER_SUITE_WEP104) { in iwl_mvm_mld_send_key()
235 keyconf->keyidx, 0); in iwl_mvm_mld_send_key()
244 struct ieee80211_key_conf *keyconf) in iwl_mvm_sec_key_add() argument
246 u32 sta_mask = iwl_mvm_get_sec_sta_mask(mvm, vif, sta, keyconf); in iwl_mvm_sec_key_add()
247 u32 key_flags = iwl_mvm_get_sec_flags(mvm, vif, sta, keyconf); in iwl_mvm_sec_key_add()
252 if (keyconf->keyidx == 4 || keyconf->keyidx == 5) { in iwl_mvm_sec_key_add()
256 if (keyconf->link_id >= 0) in iwl_mvm_sec_key_add()
257 link_id = keyconf->link_id; in iwl_mvm_sec_key_add()
277 ret = iwl_mvm_mld_send_key(mvm, sta_mask, key_flags, keyconf); in iwl_mvm_sec_key_add()
282 mvm_link->igtk = keyconf; in iwl_mvm_sec_key_add()
288 keyconf->hw_key_idx = 0; in iwl_mvm_sec_key_add()
296 struct ieee80211_key_conf *keyconf, in _iwl_mvm_sec_key_del() argument
299 u32 sta_mask = iwl_mvm_get_sec_sta_mask(mvm, vif, sta, keyconf); in _iwl_mvm_sec_key_del()
300 u32 key_flags = iwl_mvm_get_sec_flags(mvm, vif, sta, keyconf); in _iwl_mvm_sec_key_del()
307 if (keyconf->keyidx == 4 || keyconf->keyidx == 5) { in _iwl_mvm_sec_key_del()
312 if (keyconf->link_id >= 0) in _iwl_mvm_sec_key_del()
313 link_id = keyconf->link_id; in _iwl_mvm_sec_key_del()
319 if (mvm_link->igtk == keyconf) { in _iwl_mvm_sec_key_del()
326 ret = __iwl_mvm_sec_key_del(mvm, sta_mask, key_flags, keyconf->keyidx, in _iwl_mvm_sec_key_del()
332 if (keyconf->cipher == WLAN_CIPHER_SUITE_WEP40 || in _iwl_mvm_sec_key_del()
333 keyconf->cipher == WLAN_CIPHER_SUITE_WEP104) { in _iwl_mvm_sec_key_del()
336 keyconf->keyidx, flags); in _iwl_mvm_sec_key_del()
345 struct ieee80211_key_conf *keyconf) in iwl_mvm_sec_key_del() argument
347 return _iwl_mvm_sec_key_del(mvm, vif, sta, keyconf, 0); in iwl_mvm_sec_key_del()