Lines Matching refs:aad
307 static void ccmp_special_blocks(struct sk_buff *skb, u8 *pn, u8 *b_0, u8 *aad) in ccmp_special_blocks() argument
355 put_unaligned_be16(len_a, &aad[0]); in ccmp_special_blocks()
356 put_unaligned(mask_fc, (__le16 *)&aad[2]); in ccmp_special_blocks()
357 memcpy(&aad[4], &hdr->addr1, 3 * ETH_ALEN); in ccmp_special_blocks()
360 aad[22] = *((u8 *) &hdr->seq_ctrl) & 0x0f; in ccmp_special_blocks()
361 aad[23] = 0; in ccmp_special_blocks()
364 memcpy(&aad[24], hdr->addr4, ETH_ALEN); in ccmp_special_blocks()
365 aad[30] = qos_tid; in ccmp_special_blocks()
366 aad[31] = 0; in ccmp_special_blocks()
368 memset(&aad[24], 0, ETH_ALEN + IEEE80211_QOS_CTL_LEN); in ccmp_special_blocks()
369 aad[24] = qos_tid; in ccmp_special_blocks()
408 u8 aad[2 * AES_BLOCK_SIZE]; in ccmp_encrypt_skb() local
463 ccmp_special_blocks(skb, pn, b_0, aad); in ccmp_encrypt_skb()
464 ieee80211_aes_ccm_encrypt(key->u.ccmp.tfm, b_0, aad, pos, len, in ccmp_encrypt_skb()
529 u8 aad[2 * AES_BLOCK_SIZE]; in ieee80211_crypto_ccmp_decrypt() local
532 ccmp_special_blocks(skb, pn, b_0, aad); in ieee80211_crypto_ccmp_decrypt()
535 key->u.ccmp.tfm, b_0, aad, in ieee80211_crypto_ccmp_decrypt()
553 static void gcmp_special_blocks(struct sk_buff *skb, u8 *pn, u8 *j_0, u8 *aad) in gcmp_special_blocks() argument
568 put_unaligned_be16(ieee80211_hdrlen(hdr->frame_control) - 2, &aad[0]); in gcmp_special_blocks()
579 put_unaligned(mask_fc, (__le16 *)&aad[2]); in gcmp_special_blocks()
580 memcpy(&aad[4], &hdr->addr1, 3 * ETH_ALEN); in gcmp_special_blocks()
583 aad[22] = *((u8 *)&hdr->seq_ctrl) & 0x0f; in gcmp_special_blocks()
584 aad[23] = 0; in gcmp_special_blocks()
593 memcpy(&aad[24], hdr->addr4, ETH_ALEN); in gcmp_special_blocks()
594 aad[30] = qos_tid; in gcmp_special_blocks()
595 aad[31] = 0; in gcmp_special_blocks()
597 memset(&aad[24], 0, ETH_ALEN + IEEE80211_QOS_CTL_LEN); in gcmp_special_blocks()
598 aad[24] = qos_tid; in gcmp_special_blocks()
633 u8 aad[2 * AES_BLOCK_SIZE]; in gcmp_encrypt_skb() local
689 gcmp_special_blocks(skb, pn, j_0, aad); in gcmp_encrypt_skb()
690 ieee80211_aes_gcm_encrypt(key->u.gcmp.tfm, j_0, aad, pos, len, in gcmp_encrypt_skb()
752 u8 aad[2 * AES_BLOCK_SIZE]; in ieee80211_crypto_gcmp_decrypt() local
755 gcmp_special_blocks(skb, pn, j_0, aad); in ieee80211_crypto_gcmp_decrypt()
758 key->u.gcmp.tfm, j_0, aad, in ieee80211_crypto_gcmp_decrypt()
875 static void bip_aad(struct sk_buff *skb, u8 *aad) in bip_aad() argument
887 put_unaligned(mask_fc, (__le16 *) &aad[0]); in bip_aad()
889 memcpy(aad + 2, &hdr->addr1, 3 * ETH_ALEN); in bip_aad()
921 u8 aad[20]; in ieee80211_crypto_aes_cmac_encrypt() local
947 bip_aad(skb, aad); in ieee80211_crypto_aes_cmac_encrypt()
952 ieee80211_aes_cmac(key->u.aes_cmac.tfm, aad, in ieee80211_crypto_aes_cmac_encrypt()
965 u8 aad[20]; in ieee80211_crypto_aes_cmac_256_encrypt() local
991 bip_aad(skb, aad); in ieee80211_crypto_aes_cmac_256_encrypt()
995 ieee80211_aes_cmac_256(key->u.aes_cmac.tfm, aad, in ieee80211_crypto_aes_cmac_256_encrypt()
1008 u8 aad[20], mic[8], ipn[6]; in ieee80211_crypto_aes_cmac_decrypt() local
1034 bip_aad(skb, aad); in ieee80211_crypto_aes_cmac_decrypt()
1035 ieee80211_aes_cmac(key->u.aes_cmac.tfm, aad, in ieee80211_crypto_aes_cmac_decrypt()
1058 u8 aad[20], mic[16], ipn[6]; in ieee80211_crypto_aes_cmac_256_decrypt() local
1084 bip_aad(skb, aad); in ieee80211_crypto_aes_cmac_256_decrypt()
1085 ieee80211_aes_cmac_256(key->u.aes_cmac.tfm, aad, in ieee80211_crypto_aes_cmac_256_decrypt()
1109 u8 aad[20]; in ieee80211_crypto_aes_gmac_encrypt() local
1136 bip_aad(skb, aad); in ieee80211_crypto_aes_gmac_encrypt()
1143 if (ieee80211_aes_gmac(key->u.aes_gmac.tfm, aad, nonce, in ieee80211_crypto_aes_gmac_encrypt()
1157 u8 aad[20], mic[16], ipn[6], nonce[12]; in ieee80211_crypto_aes_gmac_decrypt() local
1183 bip_aad(skb, aad); in ieee80211_crypto_aes_gmac_decrypt()
1188 if (ieee80211_aes_gmac(key->u.aes_gmac.tfm, aad, nonce, in ieee80211_crypto_aes_gmac_decrypt()