• Home
  • Raw
  • Download

Lines Matching refs:desc

73 static int shash_update_unaligned(struct shash_desc *desc, const u8 *data,  in shash_update_unaligned()  argument
76 struct crypto_shash *tfm = desc->tfm; in shash_update_unaligned()
90 err = shash->update(desc, buf, unaligned_len); in shash_update_unaligned()
94 shash->update(desc, data + unaligned_len, len - unaligned_len); in shash_update_unaligned()
97 int crypto_shash_update(struct shash_desc *desc, const u8 *data, in crypto_shash_update() argument
100 struct crypto_shash *tfm = desc->tfm; in crypto_shash_update()
105 return shash_update_unaligned(desc, data, len); in crypto_shash_update()
107 return shash->update(desc, data, len); in crypto_shash_update()
111 static int shash_final_unaligned(struct shash_desc *desc, u8 *out) in shash_final_unaligned() argument
113 struct crypto_shash *tfm = desc->tfm; in shash_final_unaligned()
122 err = shash->final(desc, buf); in shash_final_unaligned()
133 int crypto_shash_final(struct shash_desc *desc, u8 *out) in crypto_shash_final() argument
135 struct crypto_shash *tfm = desc->tfm; in crypto_shash_final()
140 return shash_final_unaligned(desc, out); in crypto_shash_final()
142 return shash->final(desc, out); in crypto_shash_final()
146 static int shash_finup_unaligned(struct shash_desc *desc, const u8 *data, in shash_finup_unaligned() argument
149 return crypto_shash_update(desc, data, len) ?: in shash_finup_unaligned()
150 crypto_shash_final(desc, out); in shash_finup_unaligned()
153 int crypto_shash_finup(struct shash_desc *desc, const u8 *data, in crypto_shash_finup() argument
156 struct crypto_shash *tfm = desc->tfm; in crypto_shash_finup()
161 return shash_finup_unaligned(desc, data, len, out); in crypto_shash_finup()
163 return shash->finup(desc, data, len, out); in crypto_shash_finup()
167 static int shash_digest_unaligned(struct shash_desc *desc, const u8 *data, in shash_digest_unaligned() argument
170 return crypto_shash_init(desc) ?: in shash_digest_unaligned()
171 crypto_shash_finup(desc, data, len, out); in shash_digest_unaligned()
174 int crypto_shash_digest(struct shash_desc *desc, const u8 *data, in crypto_shash_digest() argument
177 struct crypto_shash *tfm = desc->tfm; in crypto_shash_digest()
182 return shash_digest_unaligned(desc, data, len, out); in crypto_shash_digest()
184 return shash->digest(desc, data, len, out); in crypto_shash_digest()
188 static int shash_default_export(struct shash_desc *desc, void *out) in shash_default_export() argument
190 memcpy(out, shash_desc_ctx(desc), crypto_shash_descsize(desc->tfm)); in shash_default_export()
194 static int shash_default_import(struct shash_desc *desc, const void *in) in shash_default_import() argument
196 memcpy(shash_desc_ctx(desc), in, crypto_shash_descsize(desc->tfm)); in shash_default_import()
211 struct shash_desc *desc = ahash_request_ctx(req); in shash_async_init() local
213 desc->tfm = *ctx; in shash_async_init()
214 desc->flags = req->base.flags; in shash_async_init()
216 return crypto_shash_init(desc); in shash_async_init()
219 int shash_ahash_update(struct ahash_request *req, struct shash_desc *desc) in shash_ahash_update() argument
226 nbytes = crypto_shash_update(desc, walk.data, nbytes); in shash_ahash_update()
242 int shash_ahash_finup(struct ahash_request *req, struct shash_desc *desc) in shash_ahash_finup() argument
249 return crypto_shash_final(desc, req->result); in shash_ahash_finup()
253 crypto_shash_finup(desc, walk.data, nbytes, in shash_ahash_finup()
255 crypto_shash_update(desc, walk.data, nbytes); in shash_ahash_finup()
266 struct shash_desc *desc = ahash_request_ctx(req); in shash_async_finup() local
268 desc->tfm = *ctx; in shash_async_finup()
269 desc->flags = req->base.flags; in shash_async_finup()
271 return shash_ahash_finup(req, desc); in shash_async_finup()
274 int shash_ahash_digest(struct ahash_request *req, struct shash_desc *desc) in shash_ahash_digest() argument
285 err = crypto_shash_digest(desc, data + offset, nbytes, in shash_ahash_digest()
288 crypto_yield(desc->flags); in shash_ahash_digest()
290 err = crypto_shash_init(desc) ?: in shash_ahash_digest()
291 shash_ahash_finup(req, desc); in shash_ahash_digest()
300 struct shash_desc *desc = ahash_request_ctx(req); in shash_async_digest() local
302 desc->tfm = *ctx; in shash_async_digest()
303 desc->flags = req->base.flags; in shash_async_digest()
305 return shash_ahash_digest(req, desc); in shash_async_digest()
316 struct shash_desc *desc = ahash_request_ctx(req); in shash_async_import() local
318 desc->tfm = *ctx; in shash_async_import()
319 desc->flags = req->base.flags; in shash_async_import()
321 return crypto_shash_import(desc, in); in shash_async_import()
373 struct shash_desc *desc = *descp; in shash_compat_setkey() local
375 return crypto_shash_setkey(desc->tfm, key, keylen); in shash_compat_setkey()
381 struct shash_desc *desc = *descp; in shash_compat_init() local
383 desc->flags = hdesc->flags; in shash_compat_init()
385 return crypto_shash_init(desc); in shash_compat_init()
392 struct shash_desc *desc = *descp; in shash_compat_update() local
398 nbytes = crypto_shash_update(desc, walk.data, nbytes); in shash_compat_update()
418 struct shash_desc *desc = *descp; in shash_compat_digest() local
421 desc->flags = hdesc->flags; in shash_compat_digest()
424 err = crypto_shash_digest(desc, data + offset, nbytes, out); in shash_compat_digest()
426 crypto_yield(desc->flags); in shash_compat_digest()
447 struct shash_desc *desc = *descp; in crypto_exit_shash_ops_compat() local
449 crypto_free_shash(desc->tfm); in crypto_exit_shash_ops_compat()
450 kzfree(desc); in crypto_exit_shash_ops_compat()
460 struct shash_desc *desc; in crypto_init_shash_ops_compat() local
471 desc = kmalloc(sizeof(*desc) + crypto_shash_descsize(shash), in crypto_init_shash_ops_compat()
473 if (!desc) { in crypto_init_shash_ops_compat()
478 *descp = desc; in crypto_init_shash_ops_compat()
479 desc->tfm = shash; in crypto_init_shash_ops_compat()