Lines Matching refs:ctx
67 void sha1_starts (sha1_context * ctx) in sha1_starts() argument
74 ctx->cdev = NULL; in sha1_starts()
75 if (ctx->length) { in sha1_starts()
76 ctx->cdev = crypto_get_device(algo); in sha1_starts()
77 if (ctx->cdev) { in sha1_starts()
79 cctx.length = ctx->length; in sha1_starts()
80 crypto_sha_init(ctx->cdev, &cctx); in sha1_starts()
86 ctx->total[0] = 0; in sha1_starts()
87 ctx->total[1] = 0; in sha1_starts()
89 ctx->state[0] = 0x67452301; in sha1_starts()
90 ctx->state[1] = 0xEFCDAB89; in sha1_starts()
91 ctx->state[2] = 0x98BADCFE; in sha1_starts()
92 ctx->state[3] = 0x10325476; in sha1_starts()
93 ctx->state[4] = 0xC3D2E1F0; in sha1_starts()
96 static void __maybe_unused sha1_process_one(sha1_context *ctx, const unsigned char data[64]) in sha1_process_one() argument
129 A = ctx->state[0]; in sha1_process_one()
130 B = ctx->state[1]; in sha1_process_one()
131 C = ctx->state[2]; in sha1_process_one()
132 D = ctx->state[3]; in sha1_process_one()
133 E = ctx->state[4]; in sha1_process_one()
243 ctx->state[0] += A; in sha1_process_one()
244 ctx->state[1] += B; in sha1_process_one()
245 ctx->state[2] += C; in sha1_process_one()
246 ctx->state[3] += D; in sha1_process_one()
247 ctx->state[4] += E; in sha1_process_one()
250 __weak void sha1_process(sha1_context *ctx, const unsigned char *data, in sha1_process() argument
257 sha1_process_one(ctx, data); in sha1_process()
265 void sha1_update(sha1_context *ctx, const unsigned char *input, in sha1_update() argument
275 if (ctx->cdev) { in sha1_update()
276 crypto_sha_update(ctx->cdev, (void *)input, ilen); in sha1_update()
281 left = ctx->total[0] & 0x3F; in sha1_update()
284 ctx->total[0] += ilen; in sha1_update()
285 ctx->total[0] &= 0xFFFFFFFF; in sha1_update()
287 if (ctx->total[0] < (unsigned long) ilen) in sha1_update()
288 ctx->total[1]++; in sha1_update()
291 memcpy ((void *) (ctx->buffer + left), (void *) input, fill); in sha1_update()
292 sha1_process(ctx, ctx->buffer, 1); in sha1_update()
298 sha1_process(ctx, input, ilen / 64); in sha1_update()
303 memcpy ((void *) (ctx->buffer + left), (void *) input, ilen); in sha1_update()
317 void sha1_finish (sha1_context * ctx, unsigned char output[20]) in sha1_finish() argument
327 if (ctx->cdev) { in sha1_finish()
329 cctx.length = ctx->length; in sha1_finish()
330 crypto_sha_final(ctx->cdev, &cctx, output); in sha1_finish()
335 high = (ctx->total[0] >> 29) in sha1_finish()
336 | (ctx->total[1] << 3); in sha1_finish()
337 low = (ctx->total[0] << 3); in sha1_finish()
342 last = ctx->total[0] & 0x3F; in sha1_finish()
345 sha1_update (ctx, (unsigned char *) sha1_padding, padn); in sha1_finish()
346 sha1_update (ctx, msglen, 8); in sha1_finish()
348 PUT_UINT32_BE (ctx->state[0], output, 0); in sha1_finish()
349 PUT_UINT32_BE (ctx->state[1], output, 4); in sha1_finish()
350 PUT_UINT32_BE (ctx->state[2], output, 8); in sha1_finish()
351 PUT_UINT32_BE (ctx->state[3], output, 12); in sha1_finish()
352 PUT_UINT32_BE (ctx->state[4], output, 16); in sha1_finish()
361 sha1_context ctx; in sha1_csum() local
365 ctx.length = ilen; in sha1_csum()
368 sha1_starts (&ctx); in sha1_csum()
369 sha1_update (&ctx, input, ilen); in sha1_csum()
370 sha1_finish (&ctx, output); in sha1_csum()
380 sha1_context ctx; in sha1_csum_wd() local
387 ctx.length = ilen; in sha1_csum_wd()
390 sha1_starts (&ctx); in sha1_csum_wd()
399 sha1_update (&ctx, curr, chunk); in sha1_csum_wd()
404 sha1_update (&ctx, input, ilen); in sha1_csum_wd()
407 sha1_finish (&ctx, output); in sha1_csum_wd()
418 sha1_context ctx; in sha1_hmac() local
436 ctx.length = 64 + ilen; in sha1_hmac()
439 sha1_starts (&ctx); in sha1_hmac()
440 sha1_update (&ctx, k_ipad, 64); in sha1_hmac()
441 sha1_update (&ctx, input, ilen); in sha1_hmac()
442 sha1_finish (&ctx, tmpbuf); in sha1_hmac()
446 ctx.length = 64 + 20; in sha1_hmac()
449 sha1_starts (&ctx); in sha1_hmac()
450 sha1_update (&ctx, k_opad, 64); in sha1_hmac()
451 sha1_update (&ctx, tmpbuf, 20); in sha1_hmac()
452 sha1_finish (&ctx, output); in sha1_hmac()
457 memset (&ctx, 0, sizeof (sha1_context)); in sha1_hmac()
487 sha1_context ctx; in sha1_self_test() local
492 sha1_starts (&ctx); in sha1_self_test()
495 sha1_update (&ctx, (unsigned char *) sha1_test_str[i], in sha1_self_test()
500 sha1_update (&ctx, buf, 1000); in sha1_self_test()
503 sha1_finish (&ctx, sha1sum); in sha1_self_test()