diff options
| author | jsing <> | 2026-05-09 07:11:05 +0000 |
|---|---|---|
| committer | jsing <> | 2026-05-09 07:11:05 +0000 |
| commit | c972ea47f3b19c39ca1608214558e6a934963752 (patch) | |
| tree | 66cc76e9a992c6f162b2f3bb64b1edd061295e67 /src | |
| parent | b6077f1a28e4087c661209654a7fc1deabd9067b (diff) | |
| download | openbsd-c972ea47f3b19c39ca1608214558e6a934963752.tar.gz openbsd-c972ea47f3b19c39ca1608214558e6a934963752.tar.bz2 openbsd-c972ea47f3b19c39ca1608214558e6a934963752.zip | |
Use consistent variable names in the sha256 code.
Use 'ctx' rather than 'c' for the SHA256_CTX and use data/len rather
than d/n.
ok kenjiro@ tb@
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/libcrypto/sha/sha256.c | 134 |
1 files changed, 67 insertions, 67 deletions
diff --git a/src/lib/libcrypto/sha/sha256.c b/src/lib/libcrypto/sha/sha256.c index f03475e86d..984b084ca0 100644 --- a/src/lib/libcrypto/sha/sha256.c +++ b/src/lib/libcrypto/sha/sha256.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: sha256.c,v 1.35 2026/05/09 07:08:43 jsing Exp $ */ | 1 | /* $OpenBSD: sha256.c,v 1.36 2026/05/09 07:11:05 jsing Exp $ */ |
| 2 | /* ==================================================================== | 2 | /* ==================================================================== |
| 3 | * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. | 3 | * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. |
| 4 | * | 4 | * |
| @@ -290,78 +290,78 @@ sha256_block_data_order(SHA256_CTX *ctx, const void *_in, size_t num) | |||
| 290 | #endif | 290 | #endif |
| 291 | 291 | ||
| 292 | int | 292 | int |
| 293 | SHA224_Init(SHA256_CTX *c) | 293 | SHA224_Init(SHA256_CTX *ctx) |
| 294 | { | 294 | { |
| 295 | memset(c, 0, sizeof(*c)); | 295 | memset(ctx, 0, sizeof(*ctx)); |
| 296 | 296 | ||
| 297 | /* FIPS 180-4 section 5.3.2. */ | 297 | /* FIPS 180-4 section 5.3.2. */ |
| 298 | c->h[0] = 0xc1059ed8UL; | 298 | ctx->h[0] = 0xc1059ed8UL; |
| 299 | c->h[1] = 0x367cd507UL; | 299 | ctx->h[1] = 0x367cd507UL; |
| 300 | c->h[2] = 0x3070dd17UL; | 300 | ctx->h[2] = 0x3070dd17UL; |
| 301 | c->h[3] = 0xf70e5939UL; | 301 | ctx->h[3] = 0xf70e5939UL; |
| 302 | c->h[4] = 0xffc00b31UL; | 302 | ctx->h[4] = 0xffc00b31UL; |
| 303 | c->h[5] = 0x68581511UL; | 303 | ctx->h[5] = 0x68581511UL; |
| 304 | c->h[6] = 0x64f98fa7UL; | 304 | ctx->h[6] = 0x64f98fa7UL; |
| 305 | c->h[7] = 0xbefa4fa4UL; | 305 | ctx->h[7] = 0xbefa4fa4UL; |
| 306 | 306 | ||
| 307 | c->md_len = SHA224_DIGEST_LENGTH; | 307 | ctx->md_len = SHA224_DIGEST_LENGTH; |
| 308 | 308 | ||
| 309 | return 1; | 309 | return 1; |
| 310 | } | 310 | } |
| 311 | LCRYPTO_ALIAS(SHA224_Init); | 311 | LCRYPTO_ALIAS(SHA224_Init); |
| 312 | 312 | ||
| 313 | int | 313 | int |
| 314 | SHA224_Update(SHA256_CTX *c, const void *data, size_t len) | 314 | SHA224_Update(SHA256_CTX *ctx, const void *data, size_t len) |
| 315 | { | 315 | { |
| 316 | return SHA256_Update(c, data, len); | 316 | return SHA256_Update(ctx, data, len); |
| 317 | } | 317 | } |
| 318 | LCRYPTO_ALIAS(SHA224_Update); | 318 | LCRYPTO_ALIAS(SHA224_Update); |
| 319 | 319 | ||
| 320 | int | 320 | int |
| 321 | SHA224_Final(unsigned char *md, SHA256_CTX *c) | 321 | SHA224_Final(unsigned char *md, SHA256_CTX *ctx) |
| 322 | { | 322 | { |
| 323 | return SHA256_Final(md, c); | 323 | return SHA256_Final(md, ctx); |
| 324 | } | 324 | } |
| 325 | LCRYPTO_ALIAS(SHA224_Final); | 325 | LCRYPTO_ALIAS(SHA224_Final); |
| 326 | 326 | ||
| 327 | unsigned char * | 327 | unsigned char * |
| 328 | SHA224(const unsigned char *d, size_t n, unsigned char *md) | 328 | SHA224(const unsigned char *data, size_t len, unsigned char *md) |
| 329 | { | 329 | { |
| 330 | SHA256_CTX c; | 330 | SHA256_CTX ctx; |
| 331 | 331 | ||
| 332 | SHA224_Init(&c); | 332 | SHA224_Init(&ctx); |
| 333 | SHA256_Update(&c, d, n); | 333 | SHA256_Update(&ctx, data, len); |
| 334 | SHA256_Final(md, &c); | 334 | SHA256_Final(md, &ctx); |
| 335 | 335 | ||
| 336 | explicit_bzero(&c, sizeof(c)); | 336 | explicit_bzero(&ctx, sizeof(ctx)); |
| 337 | 337 | ||
| 338 | return (md); | 338 | return (md); |
| 339 | } | 339 | } |
| 340 | LCRYPTO_ALIAS(SHA224); | 340 | LCRYPTO_ALIAS(SHA224); |
| 341 | 341 | ||
| 342 | int | 342 | int |
| 343 | SHA256_Init(SHA256_CTX *c) | 343 | SHA256_Init(SHA256_CTX *ctx) |
| 344 | { | 344 | { |
| 345 | memset(c, 0, sizeof(*c)); | 345 | memset(ctx, 0, sizeof(*ctx)); |
| 346 | 346 | ||
| 347 | /* FIPS 180-4 section 5.3.3. */ | 347 | /* FIPS 180-4 section 5.3.3. */ |
| 348 | c->h[0] = 0x6a09e667UL; | 348 | ctx->h[0] = 0x6a09e667UL; |
| 349 | c->h[1] = 0xbb67ae85UL; | 349 | ctx->h[1] = 0xbb67ae85UL; |
| 350 | c->h[2] = 0x3c6ef372UL; | 350 | ctx->h[2] = 0x3c6ef372UL; |
| 351 | c->h[3] = 0xa54ff53aUL; | 351 | ctx->h[3] = 0xa54ff53aUL; |
| 352 | c->h[4] = 0x510e527fUL; | 352 | ctx->h[4] = 0x510e527fUL; |
| 353 | c->h[5] = 0x9b05688cUL; | 353 | ctx->h[5] = 0x9b05688cUL; |
| 354 | c->h[6] = 0x1f83d9abUL; | 354 | ctx->h[6] = 0x1f83d9abUL; |
| 355 | c->h[7] = 0x5be0cd19UL; | 355 | ctx->h[7] = 0x5be0cd19UL; |
| 356 | 356 | ||
| 357 | c->md_len = SHA256_DIGEST_LENGTH; | 357 | ctx->md_len = SHA256_DIGEST_LENGTH; |
| 358 | 358 | ||
| 359 | return 1; | 359 | return 1; |
| 360 | } | 360 | } |
| 361 | LCRYPTO_ALIAS(SHA256_Init); | 361 | LCRYPTO_ALIAS(SHA256_Init); |
| 362 | 362 | ||
| 363 | int | 363 | int |
| 364 | SHA256_Update(SHA256_CTX *c, const void *data_, size_t len) | 364 | SHA256_Update(SHA256_CTX *ctx, const void *data_, size_t len) |
| 365 | { | 365 | { |
| 366 | const unsigned char *data = data_; | 366 | const unsigned char *data = data_; |
| 367 | unsigned char *p; | 367 | unsigned char *p; |
| @@ -371,38 +371,38 @@ SHA256_Update(SHA256_CTX *c, const void *data_, size_t len) | |||
| 371 | return 1; | 371 | return 1; |
| 372 | 372 | ||
| 373 | /* Update message bit counter. */ | 373 | /* Update message bit counter. */ |
| 374 | crypto_add_u32dw_u64(&c->Nh, &c->Nl, (uint64_t)len << 3); | 374 | crypto_add_u32dw_u64(&ctx->Nh, &ctx->Nl, (uint64_t)len << 3); |
| 375 | 375 | ||
| 376 | n = c->num; | 376 | n = ctx->num; |
| 377 | if (n != 0) { | 377 | if (n != 0) { |
| 378 | p = (unsigned char *)c->data; | 378 | p = (unsigned char *)ctx->data; |
| 379 | 379 | ||
| 380 | if (len >= SHA_CBLOCK || len + n >= SHA_CBLOCK) { | 380 | if (len >= SHA_CBLOCK || len + n >= SHA_CBLOCK) { |
| 381 | memcpy(p + n, data, SHA_CBLOCK - n); | 381 | memcpy(p + n, data, SHA_CBLOCK - n); |
| 382 | sha256_block_data_order(c, p, 1); | 382 | sha256_block_data_order(ctx, p, 1); |
| 383 | n = SHA_CBLOCK - n; | 383 | n = SHA_CBLOCK - n; |
| 384 | data += n; | 384 | data += n; |
| 385 | len -= n; | 385 | len -= n; |
| 386 | c->num = 0; | 386 | ctx->num = 0; |
| 387 | memset(p, 0, SHA_CBLOCK); /* keep it zeroed */ | 387 | memset(p, 0, SHA_CBLOCK); /* keep it zeroed */ |
| 388 | } else { | 388 | } else { |
| 389 | memcpy(p + n, data, len); | 389 | memcpy(p + n, data, len); |
| 390 | c->num += (unsigned int)len; | 390 | ctx->num += (unsigned int)len; |
| 391 | return 1; | 391 | return 1; |
| 392 | } | 392 | } |
| 393 | } | 393 | } |
| 394 | 394 | ||
| 395 | n = len/SHA_CBLOCK; | 395 | n = len/SHA_CBLOCK; |
| 396 | if (n > 0) { | 396 | if (n > 0) { |
| 397 | sha256_block_data_order(c, data, n); | 397 | sha256_block_data_order(ctx, data, n); |
| 398 | n *= SHA_CBLOCK; | 398 | n *= SHA_CBLOCK; |
| 399 | data += n; | 399 | data += n; |
| 400 | len -= n; | 400 | len -= n; |
| 401 | } | 401 | } |
| 402 | 402 | ||
| 403 | if (len != 0) { | 403 | if (len != 0) { |
| 404 | p = (unsigned char *)c->data; | 404 | p = (unsigned char *)ctx->data; |
| 405 | c->num = (unsigned int)len; | 405 | ctx->num = (unsigned int)len; |
| 406 | memcpy(p, data, len); | 406 | memcpy(p, data, len); |
| 407 | } | 407 | } |
| 408 | return 1; | 408 | return 1; |
| @@ -410,17 +410,17 @@ SHA256_Update(SHA256_CTX *c, const void *data_, size_t len) | |||
| 410 | LCRYPTO_ALIAS(SHA256_Update); | 410 | LCRYPTO_ALIAS(SHA256_Update); |
| 411 | 411 | ||
| 412 | void | 412 | void |
| 413 | SHA256_Transform(SHA256_CTX *c, const unsigned char *data) | 413 | SHA256_Transform(SHA256_CTX *ctx, const unsigned char *data) |
| 414 | { | 414 | { |
| 415 | sha256_block_data_order(c, data, 1); | 415 | sha256_block_data_order(ctx, data, 1); |
| 416 | } | 416 | } |
| 417 | LCRYPTO_ALIAS(SHA256_Transform); | 417 | LCRYPTO_ALIAS(SHA256_Transform); |
| 418 | 418 | ||
| 419 | int | 419 | int |
| 420 | SHA256_Final(unsigned char *md, SHA256_CTX *c) | 420 | SHA256_Final(unsigned char *md, SHA256_CTX *ctx) |
| 421 | { | 421 | { |
| 422 | unsigned char *p = (unsigned char *)c->data; | 422 | unsigned char *p = (unsigned char *)ctx->data; |
| 423 | size_t n = c->num; | 423 | size_t n = ctx->num; |
| 424 | unsigned int nn; | 424 | unsigned int nn; |
| 425 | 425 | ||
| 426 | p[n] = 0x80; /* there is always room for one */ | 426 | p[n] = 0x80; /* there is always room for one */ |
| @@ -429,15 +429,15 @@ SHA256_Final(unsigned char *md, SHA256_CTX *c) | |||
| 429 | if (n > (SHA_CBLOCK - 8)) { | 429 | if (n > (SHA_CBLOCK - 8)) { |
| 430 | memset(p + n, 0, SHA_CBLOCK - n); | 430 | memset(p + n, 0, SHA_CBLOCK - n); |
| 431 | n = 0; | 431 | n = 0; |
| 432 | sha256_block_data_order(c, p, 1); | 432 | sha256_block_data_order(ctx, p, 1); |
| 433 | } | 433 | } |
| 434 | 434 | ||
| 435 | memset(p + n, 0, SHA_CBLOCK - 8 - n); | 435 | memset(p + n, 0, SHA_CBLOCK - 8 - n); |
| 436 | c->data[SHA_LBLOCK - 2] = htobe32(c->Nh); | 436 | ctx->data[SHA_LBLOCK - 2] = htobe32(ctx->Nh); |
| 437 | c->data[SHA_LBLOCK - 1] = htobe32(c->Nl); | 437 | ctx->data[SHA_LBLOCK - 1] = htobe32(ctx->Nl); |
| 438 | 438 | ||
| 439 | sha256_block_data_order(c, p, 1); | 439 | sha256_block_data_order(ctx, p, 1); |
| 440 | c->num = 0; | 440 | ctx->num = 0; |
| 441 | memset(p, 0, SHA_CBLOCK); | 441 | memset(p, 0, SHA_CBLOCK); |
| 442 | 442 | ||
| 443 | /* | 443 | /* |
| @@ -448,26 +448,26 @@ SHA256_Final(unsigned char *md, SHA256_CTX *c) | |||
| 448 | * Idea behind separate cases for pre-defined lengths is to let the | 448 | * Idea behind separate cases for pre-defined lengths is to let the |
| 449 | * compiler decide if it's appropriate to unroll small loops. | 449 | * compiler decide if it's appropriate to unroll small loops. |
| 450 | */ | 450 | */ |
| 451 | switch (c->md_len) { | 451 | switch (ctx->md_len) { |
| 452 | case SHA224_DIGEST_LENGTH: | 452 | case SHA224_DIGEST_LENGTH: |
| 453 | for (nn = 0; nn < SHA224_DIGEST_LENGTH / 4; nn++) { | 453 | for (nn = 0; nn < SHA224_DIGEST_LENGTH / 4; nn++) { |
| 454 | crypto_store_htobe32(md, c->h[nn]); | 454 | crypto_store_htobe32(md, ctx->h[nn]); |
| 455 | md += 4; | 455 | md += 4; |
| 456 | } | 456 | } |
| 457 | break; | 457 | break; |
| 458 | 458 | ||
| 459 | case SHA256_DIGEST_LENGTH: | 459 | case SHA256_DIGEST_LENGTH: |
| 460 | for (nn = 0; nn < SHA256_DIGEST_LENGTH / 4; nn++) { | 460 | for (nn = 0; nn < SHA256_DIGEST_LENGTH / 4; nn++) { |
| 461 | crypto_store_htobe32(md, c->h[nn]); | 461 | crypto_store_htobe32(md, ctx->h[nn]); |
| 462 | md += 4; | 462 | md += 4; |
| 463 | } | 463 | } |
| 464 | break; | 464 | break; |
| 465 | 465 | ||
| 466 | default: | 466 | default: |
| 467 | if (c->md_len > SHA256_DIGEST_LENGTH) | 467 | if (ctx->md_len > SHA256_DIGEST_LENGTH) |
| 468 | return 0; | 468 | return 0; |
| 469 | for (nn = 0; nn < c->md_len / 4; nn++) { | 469 | for (nn = 0; nn < ctx->md_len / 4; nn++) { |
| 470 | crypto_store_htobe32(md, c->h[nn]); | 470 | crypto_store_htobe32(md, ctx->h[nn]); |
| 471 | md += 4; | 471 | md += 4; |
| 472 | } | 472 | } |
| 473 | break; | 473 | break; |
| @@ -478,15 +478,15 @@ SHA256_Final(unsigned char *md, SHA256_CTX *c) | |||
| 478 | LCRYPTO_ALIAS(SHA256_Final); | 478 | LCRYPTO_ALIAS(SHA256_Final); |
| 479 | 479 | ||
| 480 | unsigned char * | 480 | unsigned char * |
| 481 | SHA256(const unsigned char *d, size_t n, unsigned char *md) | 481 | SHA256(const unsigned char *data, size_t len, unsigned char *md) |
| 482 | { | 482 | { |
| 483 | SHA256_CTX c; | 483 | SHA256_CTX ctx; |
| 484 | 484 | ||
| 485 | SHA256_Init(&c); | 485 | SHA256_Init(&ctx); |
| 486 | SHA256_Update(&c, d, n); | 486 | SHA256_Update(&ctx, data, len); |
| 487 | SHA256_Final(md, &c); | 487 | SHA256_Final(md, &ctx); |
| 488 | 488 | ||
| 489 | explicit_bzero(&c, sizeof(c)); | 489 | explicit_bzero(&ctx, sizeof(ctx)); |
| 490 | 490 | ||
| 491 | return (md); | 491 | return (md); |
| 492 | } | 492 | } |
