Lines Matching refs:aead

4 #include <crypto/aead.h>
46 static void *esp_alloc_tmp(struct crypto_aead *aead, int nfrags, int extralen)
52 len += crypto_aead_ivsize(aead);
55 len += crypto_aead_alignmask(aead) &
60 len += sizeof(struct aead_request) + crypto_aead_reqsize(aead);
73 static inline u8 *esp_tmp_iv(struct crypto_aead *aead, void *tmp, int extralen)
75 return crypto_aead_ivsize(aead) ?
77 crypto_aead_alignmask(aead) + 1) : tmp + extralen;
80 static inline struct aead_request *esp_tmp_req(struct crypto_aead *aead, u8 *iv)
84 req = (void *)PTR_ALIGN(iv + crypto_aead_ivsize(aead),
86 aead_request_set_tfm(req, aead);
90 static inline struct scatterlist *esp_req_sg(struct crypto_aead *aead,
94 crypto_aead_reqsize(aead),
100 struct crypto_aead *aead = x->data;
109 iv = esp_tmp_iv(aead, tmp, extralen);
110 req = esp_tmp_req(aead, iv);
542 struct crypto_aead *aead;
556 aead = x->data;
557 alen = crypto_aead_authsize(aead);
558 ivlen = crypto_aead_ivsize(aead);
560 tmp = esp_alloc_tmp(aead, esp->nfrags + 2, extralen);
565 iv = esp_tmp_iv(aead, tmp, extralen);
566 req = esp_tmp_req(aead, iv);
567 sg = esp_req_sg(aead, req);
659 struct crypto_aead *aead;
669 aead = x->data;
670 alen = crypto_aead_authsize(aead);
681 blksize = ALIGN(crypto_aead_blocksize(aead), 4);
707 struct crypto_aead *aead = x->data;
714 alen = crypto_aead_authsize(aead);
715 hlen = sizeof(struct ip_esp_hdr) + crypto_aead_ivsize(aead);
750 struct crypto_aead *aead = x->data;
751 int hlen = sizeof(struct ip_esp_hdr) + crypto_aead_ivsize(aead);
880 struct crypto_aead *aead = x->data;
883 int ivlen = crypto_aead_ivsize(aead);
929 tmp = esp_alloc_tmp(aead, nfrags, seqhilen);
935 iv = esp_tmp_iv(aead, tmp, seqhilen);
936 req = esp_tmp_req(aead, iv);
937 sg = esp_req_sg(aead, req);
1005 struct crypto_aead *aead = x->data;
1007 if (!aead)
1010 crypto_free_aead(aead);
1016 struct crypto_aead *aead;
1020 x->geniv, x->aead->alg_name) >= CRYPTO_MAX_ALG_NAME) {
1025 aead = crypto_alloc_aead(aead_name, 0, 0);
1026 err = PTR_ERR(aead);
1027 if (IS_ERR(aead))
1030 x->data = aead;
1032 err = crypto_aead_setkey(aead, x->aead->alg_key,
1033 (x->aead->alg_key_len + 7) / 8);
1037 err = crypto_aead_setauthsize(aead, x->aead->alg_icv_len / 8);
1051 struct crypto_aead *aead;
1084 aead = crypto_alloc_aead(authenc_name, 0, 0);
1085 err = PTR_ERR(aead);
1086 if (IS_ERR(aead)) {
1091 x->data = aead;
1118 crypto_aead_authsize(aead)) {
1124 aead, x->aalg->alg_trunc_len / 8);
1134 err = crypto_aead_setkey(aead, key, keylen);
1145 struct crypto_aead *aead;
1151 if (x->aead) {
1163 aead = x->data;
1166 crypto_aead_ivsize(aead);
1196 align = ALIGN(crypto_aead_blocksize(aead), 4);
1197 x->props.trailer_len = align + 1 + crypto_aead_authsize(aead);