/linux/drivers/net/wireless/intel/iwlwifi/mvm/ |
H A D | mld-key.c | 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() [all …]
|
H A D | sta.c | 2633 struct ieee80211_key_conf *keyconf, in __iwl_mvm_remove_sta_key() argument 2650 key_flags = cpu_to_le16((keyconf->keyidx << STA_KEY_FLG_KEYID_POS) & in __iwl_mvm_remove_sta_key() 2663 u.cmd.common.key_offset = keyconf->hw_key_idx; in __iwl_mvm_remove_sta_key() 3708 struct ieee80211_key_conf *keyconf, in iwl_mvm_send_sta_igtk() argument 3714 if (WARN_ON((keyconf->flags & IEEE80211_KEY_FLAG_PAIRWISE) || in iwl_mvm_send_sta_igtk() 3715 (keyconf->keyidx != 4 && keyconf->keyidx != 5 && in iwl_mvm_send_sta_igtk() 3716 keyconf->keyidx != 6 && keyconf->keyidx != 7) || in iwl_mvm_send_sta_igtk() 3717 (keyconf->cipher != WLAN_CIPHER_SUITE_AES_CMAC && in iwl_mvm_send_sta_igtk() 3718 keyconf->cipher != WLAN_CIPHER_SUITE_BIP_GMAC_128 && in iwl_mvm_send_sta_igtk() 3719 keyconf->cipher != WLAN_CIPHER_SUITE_BIP_GMAC_256))) in iwl_mvm_send_sta_igtk() [all …]
|
H A D | sta.h | 522 struct ieee80211_key_conf *keyconf, 527 struct ieee80211_key_conf *keyconf); 531 struct ieee80211_key_conf *keyconf,
|
H A D | tx.c | 452 struct ieee80211_key_conf *keyconf = info->control.hw_key; in iwl_mvm_set_tx_cmd_pn() local 455 pn = atomic64_inc_return(&keyconf->tx_pn); in iwl_mvm_set_tx_cmd_pn() 458 crypto_hdr[3] = 0x20 | (keyconf->keyidx << 6); in iwl_mvm_set_tx_cmd_pn() 475 struct ieee80211_key_conf *keyconf = info->control.hw_key; in iwl_mvm_set_tx_cmd_crypto() local 480 switch (keyconf->cipher) { in iwl_mvm_set_tx_cmd_crypto() 488 pn = atomic64_inc_return(&keyconf->tx_pn); in iwl_mvm_set_tx_cmd_crypto() 489 ieee80211_tkip_add_iv(crypto_hdr, keyconf, pn); in iwl_mvm_set_tx_cmd_crypto() 490 ieee80211_get_tkip_p2k(keyconf, skb_frag, tx_cmd->key); in iwl_mvm_set_tx_cmd_crypto() 498 ((keyconf->keyidx << TX_CMD_SEC_WEP_KEY_IDX_POS) & in iwl_mvm_set_tx_cmd_crypto() 501 memcpy(&tx_cmd->key[3], keyconf->key, keyconf->keylen); in iwl_mvm_set_tx_cmd_crypto() [all …]
|
H A D | mvm.h | 1879 struct ieee80211_key_conf *keyconf = info->control.hw_key; in iwl_mvm_set_tx_cmd_ccmp() local 1882 memcpy(tx_cmd->key, keyconf->key, keyconf->keylen); in iwl_mvm_set_tx_cmd_ccmp() 2627 struct ieee80211_key_conf *keyconf); 2631 struct ieee80211_key_conf *keyconf); 2635 struct ieee80211_key_conf *keyconf); 2646 struct ieee80211_key_conf *keyconf); 2650 struct ieee80211_key_conf *keyconf); 2945 struct ieee80211_key_conf *keyconf,
|
/linux/drivers/net/wireless/intel/iwlwifi/dvm/ |
H A D | sta.c | 991 struct ieee80211_key_conf *keyconf) in iwl_remove_default_wep_key() argument 998 keyconf->keyidx); in iwl_remove_default_wep_key() 1000 memset(&ctx->wep_keys[keyconf->keyidx], 0, sizeof(ctx->wep_keys[0])); in iwl_remove_default_wep_key() 1009 keyconf->keyidx, ret); in iwl_remove_default_wep_key() 1016 struct ieee80211_key_conf *keyconf) in iwl_set_default_wep_key() argument 1022 if (keyconf->keylen != WEP_KEY_LEN_128 && in iwl_set_default_wep_key() 1023 keyconf->keylen != WEP_KEY_LEN_64) { in iwl_set_default_wep_key() 1025 "Bad WEP key length %d\n", keyconf->keylen); in iwl_set_default_wep_key() 1029 keyconf->hw_key_idx = IWLAGN_HW_KEY_DEFAULT; in iwl_set_default_wep_key() 1031 ctx->wep_keys[keyconf->keyidx].key_size = keyconf->keylen; in iwl_set_default_wep_key() [all …]
|
H A D | tx.c | 192 struct ieee80211_key_conf *keyconf = info->control.hw_key; in iwlagn_tx_cmd_build_hwcrypto() local 194 switch (keyconf->cipher) { in iwlagn_tx_cmd_build_hwcrypto() 197 memcpy(tx_cmd->key, keyconf->key, keyconf->keylen); in iwlagn_tx_cmd_build_hwcrypto() 204 ieee80211_get_tkip_p2k(keyconf, skb_frag, tx_cmd->key); in iwlagn_tx_cmd_build_hwcrypto() 212 (keyconf->keyidx & TX_CMD_SEC_MSK) << TX_CMD_SEC_SHIFT); in iwlagn_tx_cmd_build_hwcrypto() 214 memcpy(&tx_cmd->key[3], keyconf->key, keyconf->keylen); in iwlagn_tx_cmd_build_hwcrypto() 217 "with key %d\n", keyconf->keyidx); in iwlagn_tx_cmd_build_hwcrypto() 221 IWL_ERR(priv, "Unknown encode cipher %x\n", keyconf->cipher); in iwlagn_tx_cmd_build_hwcrypto()
|
H A D | agn.h | 307 struct ieee80211_key_conf *keyconf,
|
H A D | mac80211.c | 585 struct ieee80211_key_conf *keyconf, in iwlagn_mac_update_tkip_key() argument 591 iwl_update_tkip_key(priv, vif, keyconf, sta, iv32, phase1key); in iwlagn_mac_update_tkip_key()
|
/linux/drivers/net/wireless/intel/iwlegacy/ |
H A D | 4965-mac.c | 1602 struct ieee80211_key_conf *keyconf = info->control.hw_key; in il4965_tx_cmd_build_hwcrypto() local 1604 switch (keyconf->cipher) { in il4965_tx_cmd_build_hwcrypto() 1607 memcpy(tx_cmd->key, keyconf->key, keyconf->keylen); in il4965_tx_cmd_build_hwcrypto() 1615 ieee80211_get_tkip_p2k(keyconf, skb_frag, tx_cmd->key); in il4965_tx_cmd_build_hwcrypto() 1624 (TX_CMD_SEC_WEP | (keyconf->keyidx & TX_CMD_SEC_MSK) << in il4965_tx_cmd_build_hwcrypto() 1627 memcpy(&tx_cmd->key[3], keyconf->key, keyconf->keylen); in il4965_tx_cmd_build_hwcrypto() 1630 keyconf->keyidx); in il4965_tx_cmd_build_hwcrypto() 1634 IL_ERR("Unknown encode cipher %x\n", keyconf->cipher); in il4965_tx_cmd_build_hwcrypto() 3175 struct ieee80211_key_conf *keyconf) in il4965_remove_default_wep_key() argument 3178 int idx = keyconf->keyidx; in il4965_remove_default_wep_key() [all …]
|
H A D | 3945-mac.c | 118 struct ieee80211_key_conf *keyconf, u8 sta_id) in il3945_set_ccmp_dynamic_key_info() argument 125 key_flags |= cpu_to_le16(keyconf->keyidx << STA_KEY_FLG_KEYID_POS); in il3945_set_ccmp_dynamic_key_info() 130 keyconf->flags |= IEEE80211_KEY_FLAG_GENERATE_IV; in il3945_set_ccmp_dynamic_key_info() 131 keyconf->hw_key_idx = keyconf->keyidx; in il3945_set_ccmp_dynamic_key_info() 135 il->stations[sta_id].keyinfo.cipher = keyconf->cipher; in il3945_set_ccmp_dynamic_key_info() 136 il->stations[sta_id].keyinfo.keylen = keyconf->keylen; in il3945_set_ccmp_dynamic_key_info() 137 memcpy(il->stations[sta_id].keyinfo.key, keyconf->key, keyconf->keylen); in il3945_set_ccmp_dynamic_key_info() 139 memcpy(il->stations[sta_id].sta.key.key, keyconf->key, keyconf->keylen); in il3945_set_ccmp_dynamic_key_info() 166 struct ieee80211_key_conf *keyconf, u8 sta_id) in il3945_set_tkip_dynamic_key_info() argument 173 struct ieee80211_key_conf *keyconf, u8 sta_id) in il3945_set_wep_dynamic_key_info() argument [all …]
|
H A D | 4965.h | 125 struct ieee80211_key_conf *keyconf, 163 struct ieee80211_key_conf *keyconf,
|
/linux/net/mac80211/ |
H A D | key.c | 1247 void ieee80211_get_key_rx_seq(struct ieee80211_key_conf *keyconf, in ieee80211_get_key_rx_seq() argument 1253 key = container_of(keyconf, struct ieee80211_key, conf); in ieee80211_get_key_rx_seq() 1300 void ieee80211_set_key_rx_seq(struct ieee80211_key_conf *keyconf, in ieee80211_set_key_rx_seq() argument 1306 key = container_of(keyconf, struct ieee80211_key, conf); in ieee80211_set_key_rx_seq() 1356 void ieee80211_remove_key(struct ieee80211_key_conf *keyconf) in ieee80211_remove_key() argument 1360 key = container_of(keyconf, struct ieee80211_key, conf); in ieee80211_remove_key() 1383 struct ieee80211_key_conf *keyconf, in ieee80211_gtk_rekey_add() argument 1403 key = ieee80211_key_alloc(keyconf->cipher, keyconf->keyidx, in ieee80211_gtk_rekey_add() 1404 keyconf->keylen, keyconf->key, in ieee80211_gtk_rekey_add() 1422 void ieee80211_key_mic_failure(struct ieee80211_key_conf *keyconf) in ieee80211_key_mic_failure() argument [all …]
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8192de/ |
H A D | trx.c | 166 struct ieee80211_key_conf *keyconf; in rtl92de_tx_fill_desc() local 168 keyconf = info->control.hw_key; in rtl92de_tx_fill_desc() 169 switch (keyconf->cipher) { in rtl92de_tx_fill_desc()
|
/linux/include/net/ |
H A D | mac80211.h | 5901 void ieee80211_get_tkip_p1k_iv(struct ieee80211_key_conf *keyconf, 5915 static inline void ieee80211_get_tkip_p1k(struct ieee80211_key_conf *keyconf, in ieee80211_get_tkip_p1k() argument 5922 ieee80211_get_tkip_p1k_iv(keyconf, iv32, p1k); in ieee80211_get_tkip_p1k() 5936 void ieee80211_get_tkip_rx_p1k(struct ieee80211_key_conf *keyconf, 5950 void ieee80211_get_tkip_p2k(struct ieee80211_key_conf *keyconf, 5966 u8 *ieee80211_tkip_add_iv(u8 *pos, struct ieee80211_key_conf *keyconf, u64 pn); 5984 void ieee80211_get_key_rx_seq(struct ieee80211_key_conf *keyconf, 6004 void ieee80211_set_key_rx_seq(struct ieee80211_key_conf *keyconf, 6017 void ieee80211_remove_key(struct ieee80211_key_conf *keyconf); 6051 struct ieee80211_key_conf *keyconf, [all …]
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8192se/ |
H A D | trx.c | 439 struct ieee80211_key_conf *keyconf; in rtl92se_tx_fill_desc() local 441 keyconf = info->control.hw_key; in rtl92se_tx_fill_desc() 442 switch (keyconf->cipher) { in rtl92se_tx_fill_desc()
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8192du/ |
H A D | trx.c | 159 struct ieee80211_key_conf *keyconf = info->control.hw_key; in rtl92du_tx_fill_desc() local 161 switch (keyconf->cipher) { in rtl92du_tx_fill_desc()
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8188ee/ |
H A D | trx.c | 598 struct ieee80211_key_conf *keyconf; in rtl88ee_tx_fill_desc() local 600 keyconf = info->control.hw_key; in rtl88ee_tx_fill_desc() 601 switch (keyconf->cipher) { in rtl88ee_tx_fill_desc()
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8192ce/ |
H A D | trx.c | 449 struct ieee80211_key_conf *keyconf = in rtl92ce_tx_fill_desc() local 452 switch (keyconf->cipher) { in rtl92ce_tx_fill_desc()
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8723ae/ |
H A D | trx.c | 449 struct ieee80211_key_conf *keyconf = in rtl8723e_tx_fill_desc() local 452 switch (keyconf->cipher) { in rtl8723e_tx_fill_desc()
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8723be/ |
H A D | trx.c | 523 struct ieee80211_key_conf *keyconf = in rtl8723be_tx_fill_desc() local 525 switch (keyconf->cipher) { in rtl8723be_tx_fill_desc()
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8192cu/ |
H A D | trx.c | 560 struct ieee80211_key_conf *keyconf = info->control.hw_key; in rtl92cu_tx_fill_desc() local 562 switch (keyconf->cipher) { in rtl92cu_tx_fill_desc()
|
/linux/drivers/net/wireless/broadcom/b43/ |
H A D | main.c | 936 struct ieee80211_key_conf *keyconf, in b43_op_update_tkip_key() argument 942 int index = keyconf->hw_key_idx; in b43_op_update_tkip_key() 1003 struct ieee80211_key_conf *keyconf) in b43_key_write() argument 1021 B43_WARN_ON(dev->key[i].keyconf == keyconf); in b43_key_write() 1033 if (!dev->key[i].keyconf) { in b43_key_write() 1052 keyconf->hw_key_idx = index; in b43_key_write() 1053 dev->key[index].keyconf = keyconf; in b43_key_write() 1068 dev->key[index].keyconf = NULL; in b43_key_clear() 1111 index, (key->keyconf == NULL) ? " " : "*"); in b43_dump_keymemory()
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/ |
H A D | trx.c | 769 struct ieee80211_key_conf *keyconf = in rtl8821ae_tx_fill_desc() local 771 switch (keyconf->cipher) { in rtl8821ae_tx_fill_desc()
|
/linux/drivers/net/wireless/broadcom/b43legacy/ |
H A D | b43legacy.h | 560 void *keyconf; member
|