Lines Matching refs:req
32 static void seqiv_complete2(struct skcipher_givcrypt_request *req, int err) in seqiv_complete2() argument
34 struct ablkcipher_request *subreq = skcipher_givcrypt_reqctx(req); in seqiv_complete2()
43 geniv = skcipher_givcrypt_reqtfm(req); in seqiv_complete2()
44 memcpy(req->creq.info, subreq->info, crypto_ablkcipher_ivsize(geniv)); in seqiv_complete2()
52 struct skcipher_givcrypt_request *req = base->data; in seqiv_complete() local
54 seqiv_complete2(req, err); in seqiv_complete()
55 skcipher_givcrypt_complete(req, err); in seqiv_complete()
58 static void seqiv_aead_complete2(struct aead_givcrypt_request *req, int err) in seqiv_aead_complete2() argument
60 struct aead_request *subreq = aead_givcrypt_reqctx(req); in seqiv_aead_complete2()
69 geniv = aead_givcrypt_reqtfm(req); in seqiv_aead_complete2()
70 memcpy(req->areq.iv, subreq->iv, crypto_aead_ivsize(geniv)); in seqiv_aead_complete2()
78 struct aead_givcrypt_request *req = base->data; in seqiv_aead_complete() local
80 seqiv_aead_complete2(req, err); in seqiv_aead_complete()
81 aead_givcrypt_complete(req, err); in seqiv_aead_complete()
98 static int seqiv_givencrypt(struct skcipher_givcrypt_request *req) in seqiv_givencrypt() argument
100 struct crypto_ablkcipher *geniv = skcipher_givcrypt_reqtfm(req); in seqiv_givencrypt()
102 struct ablkcipher_request *subreq = skcipher_givcrypt_reqctx(req); in seqiv_givencrypt()
111 compl = req->creq.base.complete; in seqiv_givencrypt()
112 data = req->creq.base.data; in seqiv_givencrypt()
113 info = req->creq.info; in seqiv_givencrypt()
119 info = kmalloc(ivsize, req->creq.base.flags & in seqiv_givencrypt()
126 data = req; in seqiv_givencrypt()
129 ablkcipher_request_set_callback(subreq, req->creq.base.flags, compl, in seqiv_givencrypt()
131 ablkcipher_request_set_crypt(subreq, req->creq.src, req->creq.dst, in seqiv_givencrypt()
132 req->creq.nbytes, info); in seqiv_givencrypt()
134 seqiv_geniv(ctx, info, req->seq, ivsize); in seqiv_givencrypt()
135 memcpy(req->giv, info, ivsize); in seqiv_givencrypt()
138 if (unlikely(info != req->creq.info)) in seqiv_givencrypt()
139 seqiv_complete2(req, err); in seqiv_givencrypt()
143 static int seqiv_aead_givencrypt(struct aead_givcrypt_request *req) in seqiv_aead_givencrypt() argument
145 struct crypto_aead *geniv = aead_givcrypt_reqtfm(req); in seqiv_aead_givencrypt()
147 struct aead_request *areq = &req->areq; in seqiv_aead_givencrypt()
148 struct aead_request *subreq = aead_givcrypt_reqctx(req); in seqiv_aead_givencrypt()
172 data = req; in seqiv_aead_givencrypt()
180 seqiv_geniv(ctx, info, req->seq, ivsize); in seqiv_aead_givencrypt()
181 memcpy(req->giv, info, ivsize); in seqiv_aead_givencrypt()
185 seqiv_aead_complete2(req, err); in seqiv_aead_givencrypt()
189 static int seqiv_givencrypt_first(struct skcipher_givcrypt_request *req) in seqiv_givencrypt_first() argument
191 struct crypto_ablkcipher *geniv = skcipher_givcrypt_reqtfm(req); in seqiv_givencrypt_first()
209 return seqiv_givencrypt(req); in seqiv_givencrypt_first()
212 static int seqiv_aead_givencrypt_first(struct aead_givcrypt_request *req) in seqiv_aead_givencrypt_first() argument
214 struct crypto_aead *geniv = aead_givcrypt_reqtfm(req); in seqiv_aead_givencrypt_first()
232 return seqiv_aead_givencrypt(req); in seqiv_aead_givencrypt_first()