Lines Matching +full:data +full:- +full:out

1 // SPDX-License-Identifier: GPL-2.0-or-later
12 * Copyright (c) Jean-Francois Dive <jef@linuxbe.org>
29 static int sha1_update(struct shash_desc *desc, const u8 *data, in sha1_update() argument
35 (sctx->count % SHA1_BLOCK_SIZE) + len < SHA1_BLOCK_SIZE) in sha1_update()
36 return crypto_sha1_update(desc, data, len); in sha1_update()
40 * 160-bit internal state, as this is what the asm functions expect. in sha1_update()
45 sha1_base_do_update(desc, data, len, sha1_xform); in sha1_update()
51 static int sha1_finup(struct shash_desc *desc, const u8 *data, in sha1_finup() argument
52 unsigned int len, u8 *out, sha1_block_fn *sha1_xform) in sha1_finup() argument
55 return crypto_sha1_finup(desc, data, len, out); in sha1_finup()
59 sha1_base_do_update(desc, data, len, sha1_xform); in sha1_finup()
63 return sha1_base_finish(desc, out); in sha1_finup()
67 const u8 *data, int blocks);
69 static int sha1_ssse3_update(struct shash_desc *desc, const u8 *data, in sha1_ssse3_update() argument
72 return sha1_update(desc, data, len, sha1_transform_ssse3); in sha1_ssse3_update()
75 static int sha1_ssse3_finup(struct shash_desc *desc, const u8 *data, in sha1_ssse3_finup() argument
76 unsigned int len, u8 *out) in sha1_ssse3_finup() argument
78 return sha1_finup(desc, data, len, out, sha1_transform_ssse3); in sha1_ssse3_finup()
82 static int sha1_ssse3_final(struct shash_desc *desc, u8 *out) in sha1_ssse3_final() argument
84 return sha1_ssse3_finup(desc, NULL, 0, out); in sha1_ssse3_final()
96 .cra_driver_name = "sha1-ssse3",
117 const u8 *data, int blocks);
119 static int sha1_avx_update(struct shash_desc *desc, const u8 *data, in sha1_avx_update() argument
122 return sha1_update(desc, data, len, sha1_transform_avx); in sha1_avx_update()
125 static int sha1_avx_finup(struct shash_desc *desc, const u8 *data, in sha1_avx_finup() argument
126 unsigned int len, u8 *out) in sha1_avx_finup() argument
128 return sha1_finup(desc, data, len, out, sha1_transform_avx); in sha1_avx_finup()
131 static int sha1_avx_final(struct shash_desc *desc, u8 *out) in sha1_avx_final() argument
133 return sha1_avx_finup(desc, NULL, 0, out); in sha1_avx_final()
145 .cra_driver_name = "sha1-avx",
179 const u8 *data, int blocks);
192 const u8 *data, int blocks) in sha1_apply_transform_avx2() argument
194 /* Select the optimal transform based on data block size */ in sha1_apply_transform_avx2()
196 sha1_transform_avx2(state, data, blocks); in sha1_apply_transform_avx2()
198 sha1_transform_avx(state, data, blocks); in sha1_apply_transform_avx2()
201 static int sha1_avx2_update(struct shash_desc *desc, const u8 *data, in sha1_avx2_update() argument
204 return sha1_update(desc, data, len, sha1_apply_transform_avx2); in sha1_avx2_update()
207 static int sha1_avx2_finup(struct shash_desc *desc, const u8 *data, in sha1_avx2_finup() argument
208 unsigned int len, u8 *out) in sha1_avx2_finup() argument
210 return sha1_finup(desc, data, len, out, sha1_apply_transform_avx2); in sha1_avx2_finup()
213 static int sha1_avx2_final(struct shash_desc *desc, u8 *out) in sha1_avx2_final() argument
215 return sha1_avx2_finup(desc, NULL, 0, out); in sha1_avx2_final()
227 .cra_driver_name = "sha1-avx2",
248 asmlinkage void sha1_ni_transform(struct sha1_state *digest, const u8 *data,
251 static int sha1_ni_update(struct shash_desc *desc, const u8 *data, in sha1_ni_update() argument
254 return sha1_update(desc, data, len, sha1_ni_transform); in sha1_ni_update()
257 static int sha1_ni_finup(struct shash_desc *desc, const u8 *data, in sha1_ni_finup() argument
258 unsigned int len, u8 *out) in sha1_ni_finup() argument
260 return sha1_finup(desc, data, len, out, sha1_ni_transform); in sha1_ni_finup()
263 static int sha1_ni_final(struct shash_desc *desc, u8 *out) in sha1_ni_final() argument
265 return sha1_ni_finup(desc, NULL, 0, out); in sha1_ni_final()
277 .cra_driver_name = "sha1-ni",
327 return -ENODEV; in sha1_ssse3_mod_init()
345 MODULE_ALIAS_CRYPTO("sha1-ssse3");
346 MODULE_ALIAS_CRYPTO("sha1-avx");
347 MODULE_ALIAS_CRYPTO("sha1-avx2");
349 MODULE_ALIAS_CRYPTO("sha1-ni");