• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/apr/random/unix/

Lines Matching refs:context

195 void apr__SHA256_Init(SHA256_CTX* context) {
196 if (context == (SHA256_CTX*)0) {
199 MEMCPY_BCOPY(context->state, sha256_initial_hash_value, SHA256_DIGEST_LENGTH);
200 MEMSET_BZERO(context->buffer, SHA256_BLOCK_LENGTH);
201 context->bitcount = 0;
241 void apr__SHA256_Transform(SHA256_CTX* context, const sha2_word32* data) {
246 W256 = (sha2_word32*)context->buffer;
249 a = context->state[0];
250 b = context->state[1];
251 c = context->state[2];
252 d = context->state[3];
253 e = context->state[4];
254 f = context->state[5];
255 g = context->state[6];
256 h = context->state[7];
284 context->state[0] += a;
285 context->state[1] += b;
286 context->state[2] += c;
287 context->state[3] += d;
288 context->state[4] += e;
289 context->state[5] += f;
290 context->state[6] += g;
291 context->state[7] += h;
299 void apr__SHA256_Transform(SHA256_CTX* context, const sha2_word32* data) {
304 W256 = (sha2_word32*)context->buffer;
307 a = context->state[0];
308 b = context->state[1];
309 c = context->state[2];
310 d = context->state[3];
311 e = context->state[4];
312 f = context->state[5];
313 g = context->state[6];
314 h = context->state[7];
364 context->state[0] += a;
365 context->state[1] += b;
366 context->state[2] += c;
367 context->state[3] += d;
368 context->state[4] += e;
369 context->state[5] += f;
370 context->state[6] += g;
371 context->state[7] += h;
379 void apr__SHA256_Update(SHA256_CTX* context, const sha2_byte *data, size_t len) {
388 assert(context != (SHA256_CTX*)0 && data != (sha2_byte*)0);
390 usedspace = (unsigned int)((context->bitcount >> 3)
398 MEMCPY_BCOPY(&context->buffer[usedspace], data, freespace);
399 context->bitcount += freespace << 3;
402 apr__SHA256_Transform(context, (sha2_word32*)context->buffer);
405 MEMCPY_BCOPY(&context->buffer[usedspace], data, len);
406 context->bitcount += len << 3;
414 apr__SHA256_Transform(context, (sha2_word32*)data);
415 context->bitcount += SHA256_BLOCK_LENGTH << 3;
421 MEMCPY_BCOPY(context->buffer, data, len);
422 context->bitcount += len << 3;
428 void apr__SHA256_Final(sha2_byte digest[], SHA256_CTX* context) {
433 assert(context != (SHA256_CTX*)0);
437 usedspace = (unsigned int)((context->bitcount >> 3)
441 REVERSE64(context->bitcount,context->bitcount);
445 context->buffer[usedspace++] = 0x80;
449 MEMSET_BZERO(&context->buffer[usedspace], SHA256_SHORT_BLOCK_LENGTH - usedspace);
452 MEMSET_BZERO(&context->buffer[usedspace], SHA256_BLOCK_LENGTH - usedspace);
455 apr__SHA256_Transform(context, (sha2_word32*)context->buffer);
458 MEMSET_BZERO(context->buffer, SHA256_SHORT_BLOCK_LENGTH);
462 MEMSET_BZERO(context->buffer, SHA256_SHORT_BLOCK_LENGTH);
465 *context->buffer = 0x80;
473 bitcount.bitcount = context->bitcount;
474 MEMCPY_BCOPY(&context->buffer[SHA256_SHORT_BLOCK_LENGTH], bitcount.bytes, 8);
478 apr__SHA256_Transform(context, (sha2_word32*)context->buffer);
485 REVERSE32(context->state[j],context->state[j]);
486 *d++ = context->state[j];
490 MEMCPY_BCOPY(d, context->state, SHA256_DIGEST_LENGTH);
495 MEMSET_BZERO(context, sizeof(*context));
499 char *apr__SHA256_End(SHA256_CTX* context, char buffer[]) {
504 assert(context != (SHA256_CTX*)0);
507 apr__SHA256_Final(digest, context);
516 MEMSET_BZERO(context, sizeof(*context));
523 SHA256_CTX context;
525 apr__SHA256_Init(&context);
526 apr__SHA256_Update(&context, data, len);
527 return apr__SHA256_End(&context, digest);