Lines Matching refs:data
192 int crypto_akcipher_sync_prep(struct crypto_akcipher_sync_data *data)
194 unsigned int reqsize = crypto_akcipher_reqsize(data->tfm);
201 if (data->dst)
202 mlen = max(data->slen, data->dlen);
204 mlen = data->slen + data->dlen;
214 data->req = req;
215 akcipher_request_set_tfm(req, data->tfm);
218 data->buf = buf;
219 memcpy(buf, data->src, data->slen);
221 sg = &data->sg;
223 akcipher_request_set_crypt(req, sg, data->dst ? sg : NULL,
224 data->slen, data->dlen);
226 crypto_init_wait(&data->cwait);
228 crypto_req_done, &data->cwait);
234 int crypto_akcipher_sync_post(struct crypto_akcipher_sync_data *data, int err)
236 err = crypto_wait_req(err, &data->cwait);
237 if (data->dst)
238 memcpy(data->dst, data->buf, data->dlen);
239 data->dlen = data->req->dst_len;
240 kfree_sensitive(data->req);
249 struct crypto_akcipher_sync_data data = {
257 return crypto_akcipher_sync_prep(&data) ?:
258 crypto_akcipher_sync_post(&data,
259 crypto_akcipher_encrypt(data.req));
267 struct crypto_akcipher_sync_data data = {
275 return crypto_akcipher_sync_prep(&data) ?:
276 crypto_akcipher_sync_post(&data,
277 crypto_akcipher_decrypt(data.req)) ?:
278 data.dlen;