Lines Matching refs:aead

16 #include <crypto/aead.h>
63 static void *esp_alloc_tmp(struct crypto_aead *aead, int nfrags, int seqihlen)
69 len += crypto_aead_ivsize(aead);
72 len += crypto_aead_alignmask(aead) &
77 len += sizeof(struct aead_request) + crypto_aead_reqsize(aead);
90 static inline u8 *esp_tmp_iv(struct crypto_aead *aead, void *tmp, int seqhilen)
92 return crypto_aead_ivsize(aead) ?
94 crypto_aead_alignmask(aead) + 1) : tmp + seqhilen;
97 static inline struct aead_request *esp_tmp_req(struct crypto_aead *aead, u8 *iv)
101 req = (void *)PTR_ALIGN(iv + crypto_aead_ivsize(aead),
103 aead_request_set_tfm(req, aead);
107 static inline struct scatterlist *esp_req_sg(struct crypto_aead *aead,
111 crypto_aead_reqsize(aead),
118 struct crypto_aead *aead = x->data;
127 iv = esp_tmp_iv(aead, tmp, extralen);
128 req = esp_tmp_req(aead, iv);
580 struct crypto_aead *aead;
593 aead = x->data;
594 alen = crypto_aead_authsize(aead);
595 ivlen = crypto_aead_ivsize(aead);
597 tmp = esp_alloc_tmp(aead, esp->nfrags + 2, extralen);
602 iv = esp_tmp_iv(aead, tmp, extralen);
603 req = esp_tmp_req(aead, iv);
604 sg = esp_req_sg(aead, req);
697 struct crypto_aead *aead;
707 aead = x->data;
708 alen = crypto_aead_authsize(aead);
719 blksize = ALIGN(crypto_aead_blocksize(aead), 4);
746 struct crypto_aead *aead = x->data;
753 alen = crypto_aead_authsize(aead);
754 hlen = sizeof(struct ip_esp_hdr) + crypto_aead_ivsize(aead);
793 struct crypto_aead *aead = x->data;
794 int hlen = sizeof(struct ip_esp_hdr) + crypto_aead_ivsize(aead);
930 struct crypto_aead *aead = x->data;
933 int ivlen = crypto_aead_ivsize(aead);
983 tmp = esp_alloc_tmp(aead, nfrags, seqhilen);
989 iv = esp_tmp_iv(aead, tmp, seqhilen);
990 req = esp_tmp_req(aead, iv);
991 sg = esp_req_sg(aead, req);
1054 struct crypto_aead *aead = x->data;
1056 if (!aead)
1059 crypto_free_aead(aead);
1065 struct crypto_aead *aead;
1070 x->geniv, x->aead->alg_name) >= CRYPTO_MAX_ALG_NAME)
1073 aead = crypto_alloc_aead(aead_name, 0, 0);
1074 err = PTR_ERR(aead);
1075 if (IS_ERR(aead))
1078 x->data = aead;
1080 err = crypto_aead_setkey(aead, x->aead->alg_key,
1081 (x->aead->alg_key_len + 7) / 8);
1085 err = crypto_aead_setauthsize(aead, x->aead->alg_icv_len / 8);
1095 struct crypto_aead *aead;
1128 aead = crypto_alloc_aead(authenc_name, 0, 0);
1129 err = PTR_ERR(aead);
1130 if (IS_ERR(aead))
1133 x->data = aead;
1160 crypto_aead_authsize(aead)) {
1163 crypto_aead_authsize(aead),
1169 aead, x->aalg->alg_trunc_len / 8);
1177 err = crypto_aead_setkey(aead, key, keylen);
1188 struct crypto_aead *aead;
1194 if (x->aead)
1202 aead = x->data;
1205 crypto_aead_ivsize(aead);
1244 align = ALIGN(crypto_aead_blocksize(aead), 4);
1245 x->props.trailer_len = align + 1 + crypto_aead_authsize(aead);