• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/unbound/compat/

Lines Matching refs:context

262 void SHA512_Init(SHA512_CTX* context) {
263 if (context == (SHA512_CTX*)0) {
266 MEMCPY_BCOPY(context->state, sha512_initial_hash_value, SHA512_DIGEST_LENGTH);
267 MEMSET_BZERO(context->buffer, SHA512_BLOCK_LENGTH);
268 context->bitcount[0] = context->bitcount[1] = 0;
271 static void SHA512_Transform(SHA512_CTX* context,
274 sha2_word64 T1, T2, *W512 = (sha2_word64*)context->buffer;
278 a = context->state[0];
279 b = context->state[1];
280 c = context->state[2];
281 d = context->state[3];
282 e = context->state[4];
283 f = context->state[5];
284 g = context->state[6];
285 h = context->state[7];
335 context->state[0] += a;
336 context->state[1] += b;
337 context->state[2] += c;
338 context->state[3] += d;
339 context->state[4] += e;
340 context->state[5] += f;
341 context->state[6] += g;
342 context->state[7] += h;
348 void SHA512_Update(SHA512_CTX* context, void *datain, size_t len) {
358 assert(context != (SHA512_CTX*)0 && data != (sha2_byte*)0);
360 usedspace = (context->bitcount[0] >> 3) % SHA512_BLOCK_LENGTH;
367 MEMCPY_BCOPY(&context->buffer[usedspace], data, freespace);
368 ADDINC128(context->bitcount, freespace << 3);
371 SHA512_Transform(context, (sha2_word64*)context->buffer);
374 MEMCPY_BCOPY(&context->buffer[usedspace], data, len);
375 ADDINC128(context->bitcount, len << 3);
383 SHA512_Transform(context, (sha2_word64*)data);
384 ADDINC128(context->bitcount, SHA512_BLOCK_LENGTH << 3);
390 MEMCPY_BCOPY(context->buffer, data, len);
391 ADDINC128(context->bitcount, len << 3);
397 static void SHA512_Last(SHA512_CTX* context) {
401 usedspace = (context->bitcount[0] >> 3) % SHA512_BLOCK_LENGTH;
404 REVERSE64(context->bitcount[0],context->bitcount[0]);
405 REVERSE64(context->bitcount[1],context->bitcount[1]);
409 context->buffer[usedspace++] = 0x80;
413 MEMSET_BZERO(&context->buffer[usedspace], SHA512_SHORT_BLOCK_LENGTH - usedspace);
416 MEMSET_BZERO(&context->buffer[usedspace], SHA512_BLOCK_LENGTH - usedspace);
419 SHA512_Transform(context, (sha2_word64*)context->buffer);
422 MEMSET_BZERO(context->buffer, SHA512_BLOCK_LENGTH - 2);
426 MEMSET_BZERO(context->buffer, SHA512_SHORT_BLOCK_LENGTH);
429 *context->buffer = 0x80;
432 cast_var.theChars = context->buffer;
433 cast_var.theLongs[SHA512_SHORT_BLOCK_LENGTH / 8] = context->bitcount[1];
434 cast_var.theLongs[SHA512_SHORT_BLOCK_LENGTH / 8 + 1] = context->bitcount[0];
437 SHA512_Transform(context, (sha2_word64*)context->buffer);
440 void SHA512_Final(sha2_byte digest[], SHA512_CTX* context) {
444 assert(context != (SHA512_CTX*)0);
448 SHA512_Last(context);
456 REVERSE64(context->state[j],context->state[j]);
457 *d++ = context->state[j];
461 MEMCPY_BCOPY(d, context->state, SHA512_DIGEST_LENGTH);
466 MEMSET_BZERO(context, sizeof(SHA512_CTX));