diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/libcrypto/hmac/hmac.c | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/hmac/hmac.h | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/md4/md4.c | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/md4/md4.h | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/md5/md5.c | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/md5/md5.h | 3 | ||||
| -rw-r--r-- | src/lib/libcrypto/ripemd/ripemd.c | 8 | ||||
| -rw-r--r-- | src/lib/libcrypto/ripemd/ripemd.h | 7 | ||||
| -rw-r--r-- | src/lib/libcrypto/sha/sha.h | 7 | ||||
| -rw-r--r-- | src/lib/libcrypto/sha/sha1.c | 6 | ||||
| -rw-r--r-- | src/lib/libcrypto/sha/sha256.c | 10 | ||||
| -rw-r--r-- | src/lib/libcrypto/sha/sha512.c | 10 | ||||
| -rw-r--r-- | src/lib/libcrypto/whrlpool/whirlpool.c | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/whrlpool/whrlpool.h | 9 |
14 files changed, 35 insertions, 55 deletions
diff --git a/src/lib/libcrypto/hmac/hmac.c b/src/lib/libcrypto/hmac/hmac.c index 7c882ba15b..1315b1a0d2 100644 --- a/src/lib/libcrypto/hmac/hmac.c +++ b/src/lib/libcrypto/hmac/hmac.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: hmac.c,v 1.34 2024/03/30 10:10:58 tb Exp $ */ | 1 | /* $OpenBSD: hmac.c,v 1.35 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -263,11 +263,8 @@ HMAC(const EVP_MD *evp_md, const void *key, int key_len, const unsigned char *d, | |||
| 263 | size_t n, unsigned char *md, unsigned int *md_len) | 263 | size_t n, unsigned char *md, unsigned int *md_len) |
| 264 | { | 264 | { |
| 265 | HMAC_CTX c; | 265 | HMAC_CTX c; |
| 266 | static unsigned char m[EVP_MAX_MD_SIZE]; | ||
| 267 | const unsigned char dummy_key[1] = { 0 }; | 266 | const unsigned char dummy_key[1] = { 0 }; |
| 268 | 267 | ||
| 269 | if (md == NULL) | ||
| 270 | md = m; | ||
| 271 | if (key == NULL) { | 268 | if (key == NULL) { |
| 272 | key = dummy_key; | 269 | key = dummy_key; |
| 273 | key_len = 0; | 270 | key_len = 0; |
diff --git a/src/lib/libcrypto/hmac/hmac.h b/src/lib/libcrypto/hmac/hmac.h index 1ce365294c..abdd19450e 100644 --- a/src/lib/libcrypto/hmac/hmac.h +++ b/src/lib/libcrypto/hmac/hmac.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: hmac.h,v 1.17 2023/04/25 15:48:48 tb Exp $ */ | 1 | /* $OpenBSD: hmac.h,v 1.18 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -85,7 +85,8 @@ int HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int len, const EVP_MD *md, | |||
| 85 | int HMAC_Update(HMAC_CTX *ctx, const unsigned char *data, size_t len); | 85 | int HMAC_Update(HMAC_CTX *ctx, const unsigned char *data, size_t len); |
| 86 | int HMAC_Final(HMAC_CTX *ctx, unsigned char *md, unsigned int *len); | 86 | int HMAC_Final(HMAC_CTX *ctx, unsigned char *md, unsigned int *len); |
| 87 | unsigned char *HMAC(const EVP_MD *evp_md, const void *key, int key_len, | 87 | unsigned char *HMAC(const EVP_MD *evp_md, const void *key, int key_len, |
| 88 | const unsigned char *d, size_t n, unsigned char *md, unsigned int *md_len); | 88 | const unsigned char *d, size_t n, unsigned char *md, unsigned int *md_len) |
| 89 | __attribute__((__nonnull__ (6))); | ||
| 89 | int HMAC_CTX_copy(HMAC_CTX *dctx, HMAC_CTX *sctx); | 90 | int HMAC_CTX_copy(HMAC_CTX *dctx, HMAC_CTX *sctx); |
| 90 | 91 | ||
| 91 | void HMAC_CTX_set_flags(HMAC_CTX *ctx, unsigned long flags); | 92 | void HMAC_CTX_set_flags(HMAC_CTX *ctx, unsigned long flags); |
diff --git a/src/lib/libcrypto/md4/md4.c b/src/lib/libcrypto/md4/md4.c index 42c5b21428..9cf1ff9532 100644 --- a/src/lib/libcrypto/md4/md4.c +++ b/src/lib/libcrypto/md4/md4.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: md4.c,v 1.17 2024/03/28 08:00:07 jsing Exp $ */ | 1 | /* $OpenBSD: md4.c,v 1.18 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -336,10 +336,7 @@ unsigned char * | |||
| 336 | MD4(const unsigned char *d, size_t n, unsigned char *md) | 336 | MD4(const unsigned char *d, size_t n, unsigned char *md) |
| 337 | { | 337 | { |
| 338 | MD4_CTX c; | 338 | MD4_CTX c; |
| 339 | static unsigned char m[MD4_DIGEST_LENGTH]; | ||
| 340 | 339 | ||
| 341 | if (md == NULL) | ||
| 342 | md = m; | ||
| 343 | if (!MD4_Init(&c)) | 340 | if (!MD4_Init(&c)) |
| 344 | return NULL; | 341 | return NULL; |
| 345 | MD4_Update(&c, d, n); | 342 | MD4_Update(&c, d, n); |
diff --git a/src/lib/libcrypto/md4/md4.h b/src/lib/libcrypto/md4/md4.h index cb4f3cb6e9..bf4313b345 100644 --- a/src/lib/libcrypto/md4/md4.h +++ b/src/lib/libcrypto/md4/md4.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: md4.h,v 1.17 2023/07/08 06:47:26 jsing Exp $ */ | 1 | /* $OpenBSD: md4.h,v 1.18 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -92,8 +92,11 @@ typedef struct MD4state_st { | |||
| 92 | 92 | ||
| 93 | int MD4_Init(MD4_CTX *c); | 93 | int MD4_Init(MD4_CTX *c); |
| 94 | int MD4_Update(MD4_CTX *c, const void *data, size_t len); | 94 | int MD4_Update(MD4_CTX *c, const void *data, size_t len); |
| 95 | __attribute__ ((__bounded__(__buffer__, 2, 3))); | ||
| 95 | int MD4_Final(unsigned char *md, MD4_CTX *c); | 96 | int MD4_Final(unsigned char *md, MD4_CTX *c); |
| 96 | unsigned char *MD4(const unsigned char *d, size_t n, unsigned char *md); | 97 | unsigned char *MD4(const unsigned char *d, size_t n, unsigned char *md); |
| 98 | __attribute__ ((__nonnull__(3))) | ||
| 99 | __attribute__ ((__bounded__(__buffer__, 1, 2))); | ||
| 97 | void MD4_Transform(MD4_CTX *c, const unsigned char *b); | 100 | void MD4_Transform(MD4_CTX *c, const unsigned char *b); |
| 98 | #ifdef __cplusplus | 101 | #ifdef __cplusplus |
| 99 | } | 102 | } |
diff --git a/src/lib/libcrypto/md5/md5.c b/src/lib/libcrypto/md5/md5.c index 35d1ac9144..744c66f005 100644 --- a/src/lib/libcrypto/md5/md5.c +++ b/src/lib/libcrypto/md5/md5.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: md5.c,v 1.22 2024/03/28 08:00:08 jsing Exp $ */ | 1 | /* $OpenBSD: md5.c,v 1.23 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -371,10 +371,7 @@ unsigned char * | |||
| 371 | MD5(const unsigned char *d, size_t n, unsigned char *md) | 371 | MD5(const unsigned char *d, size_t n, unsigned char *md) |
| 372 | { | 372 | { |
| 373 | MD5_CTX c; | 373 | MD5_CTX c; |
| 374 | static unsigned char m[MD5_DIGEST_LENGTH]; | ||
| 375 | 374 | ||
| 376 | if (md == NULL) | ||
| 377 | md = m; | ||
| 378 | if (!MD5_Init(&c)) | 375 | if (!MD5_Init(&c)) |
| 379 | return NULL; | 376 | return NULL; |
| 380 | MD5_Update(&c, d, n); | 377 | MD5_Update(&c, d, n); |
diff --git a/src/lib/libcrypto/md5/md5.h b/src/lib/libcrypto/md5/md5.h index d248c93a85..9191ff2131 100644 --- a/src/lib/libcrypto/md5/md5.h +++ b/src/lib/libcrypto/md5/md5.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: md5.h,v 1.21 2023/07/08 06:50:38 jsing Exp $ */ | 1 | /* $OpenBSD: md5.h,v 1.22 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -98,6 +98,7 @@ int MD5_Update(MD5_CTX *c, const void *data, size_t len) | |||
| 98 | __attribute__ ((__bounded__(__buffer__, 2, 3))); | 98 | __attribute__ ((__bounded__(__buffer__, 2, 3))); |
| 99 | int MD5_Final(unsigned char *md, MD5_CTX *c); | 99 | int MD5_Final(unsigned char *md, MD5_CTX *c); |
| 100 | unsigned char *MD5(const unsigned char *d, size_t n, unsigned char *md) | 100 | unsigned char *MD5(const unsigned char *d, size_t n, unsigned char *md) |
| 101 | __attribute__ ((__nonnull__(3))) | ||
| 101 | __attribute__ ((__bounded__(__buffer__, 1, 2))); | 102 | __attribute__ ((__bounded__(__buffer__, 1, 2))); |
| 102 | void MD5_Transform(MD5_CTX *c, const unsigned char *b); | 103 | void MD5_Transform(MD5_CTX *c, const unsigned char *b); |
| 103 | #ifdef __cplusplus | 104 | #ifdef __cplusplus |
diff --git a/src/lib/libcrypto/ripemd/ripemd.c b/src/lib/libcrypto/ripemd/ripemd.c index b2d798c495..08fa208dcc 100644 --- a/src/lib/libcrypto/ripemd/ripemd.c +++ b/src/lib/libcrypto/ripemd/ripemd.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: ripemd.c,v 1.18 2024/03/28 23:54:15 joshua Exp $ */ | 1 | /* $OpenBSD: ripemd.c,v 1.19 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -483,14 +483,10 @@ RIPEMD160_Final(unsigned char *md, RIPEMD160_CTX *c) | |||
| 483 | LCRYPTO_ALIAS(RIPEMD160_Final); | 483 | LCRYPTO_ALIAS(RIPEMD160_Final); |
| 484 | 484 | ||
| 485 | unsigned char * | 485 | unsigned char * |
| 486 | RIPEMD160(const unsigned char *d, size_t n, | 486 | RIPEMD160(const unsigned char *d, size_t n, unsigned char *md) |
| 487 | unsigned char *md) | ||
| 488 | { | 487 | { |
| 489 | RIPEMD160_CTX c; | 488 | RIPEMD160_CTX c; |
| 490 | static unsigned char m[RIPEMD160_DIGEST_LENGTH]; | ||
| 491 | 489 | ||
| 492 | if (md == NULL) | ||
| 493 | md = m; | ||
| 494 | if (!RIPEMD160_Init(&c)) | 490 | if (!RIPEMD160_Init(&c)) |
| 495 | return NULL; | 491 | return NULL; |
| 496 | RIPEMD160_Update(&c, d, n); | 492 | RIPEMD160_Update(&c, d, n); |
diff --git a/src/lib/libcrypto/ripemd/ripemd.h b/src/lib/libcrypto/ripemd/ripemd.h index 03ba781c4f..5925083c0c 100644 --- a/src/lib/libcrypto/ripemd/ripemd.h +++ b/src/lib/libcrypto/ripemd/ripemd.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: ripemd.h,v 1.15 2023/07/08 06:52:56 jsing Exp $ */ | 1 | /* $OpenBSD: ripemd.h,v 1.16 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -93,9 +93,12 @@ typedef struct RIPEMD160state_st { | |||
| 93 | 93 | ||
| 94 | int RIPEMD160_Init(RIPEMD160_CTX *c); | 94 | int RIPEMD160_Init(RIPEMD160_CTX *c); |
| 95 | int RIPEMD160_Update(RIPEMD160_CTX *c, const void *data, size_t len); | 95 | int RIPEMD160_Update(RIPEMD160_CTX *c, const void *data, size_t len); |
| 96 | __attribute__ ((__bounded__(__buffer__, 2, 3))); | ||
| 96 | int RIPEMD160_Final(unsigned char *md, RIPEMD160_CTX *c); | 97 | int RIPEMD160_Final(unsigned char *md, RIPEMD160_CTX *c); |
| 97 | unsigned char *RIPEMD160(const unsigned char *d, size_t n, | 98 | unsigned char *RIPEMD160(const unsigned char *d, size_t n, |
| 98 | unsigned char *md); | 99 | unsigned char *md) |
| 100 | __attribute__ ((__nonnull__(3))) | ||
| 101 | __attribute__ ((__bounded__(__buffer__, 1, 2))); | ||
| 99 | void RIPEMD160_Transform(RIPEMD160_CTX *c, const unsigned char *b); | 102 | void RIPEMD160_Transform(RIPEMD160_CTX *c, const unsigned char *b); |
| 100 | #ifdef __cplusplus | 103 | #ifdef __cplusplus |
| 101 | } | 104 | } |
diff --git a/src/lib/libcrypto/sha/sha.h b/src/lib/libcrypto/sha/sha.h index e1de79f4f4..f87203d912 100644 --- a/src/lib/libcrypto/sha/sha.h +++ b/src/lib/libcrypto/sha/sha.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: sha.h,v 1.22 2023/07/08 07:08:11 jsing Exp $ */ | 1 | /* $OpenBSD: sha.h,v 1.23 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -102,6 +102,7 @@ int SHA1_Update(SHA_CTX *c, const void *data, size_t len) | |||
| 102 | __attribute__ ((__bounded__(__buffer__, 2, 3))); | 102 | __attribute__ ((__bounded__(__buffer__, 2, 3))); |
| 103 | int SHA1_Final(unsigned char *md, SHA_CTX *c); | 103 | int SHA1_Final(unsigned char *md, SHA_CTX *c); |
| 104 | unsigned char *SHA1(const unsigned char *d, size_t n, unsigned char *md) | 104 | unsigned char *SHA1(const unsigned char *d, size_t n, unsigned char *md) |
| 105 | __attribute__ ((__nonnull__(3))) | ||
| 105 | __attribute__ ((__bounded__(__buffer__, 1, 2))); | 106 | __attribute__ ((__bounded__(__buffer__, 1, 2))); |
| 106 | void SHA1_Transform(SHA_CTX *c, const unsigned char *data); | 107 | void SHA1_Transform(SHA_CTX *c, const unsigned char *data); |
| 107 | #endif | 108 | #endif |
| @@ -125,12 +126,14 @@ int SHA224_Update(SHA256_CTX *c, const void *data, size_t len) | |||
| 125 | __attribute__ ((__bounded__(__buffer__, 2, 3))); | 126 | __attribute__ ((__bounded__(__buffer__, 2, 3))); |
| 126 | int SHA224_Final(unsigned char *md, SHA256_CTX *c); | 127 | int SHA224_Final(unsigned char *md, SHA256_CTX *c); |
| 127 | unsigned char *SHA224(const unsigned char *d, size_t n, unsigned char *md) | 128 | unsigned char *SHA224(const unsigned char *d, size_t n, unsigned char *md) |
| 129 | __attribute__ ((__nonnull__(3))) | ||
| 128 | __attribute__ ((__bounded__(__buffer__, 1, 2))); | 130 | __attribute__ ((__bounded__(__buffer__, 1, 2))); |
| 129 | int SHA256_Init(SHA256_CTX *c); | 131 | int SHA256_Init(SHA256_CTX *c); |
| 130 | int SHA256_Update(SHA256_CTX *c, const void *data, size_t len) | 132 | int SHA256_Update(SHA256_CTX *c, const void *data, size_t len) |
| 131 | __attribute__ ((__bounded__(__buffer__, 2, 3))); | 133 | __attribute__ ((__bounded__(__buffer__, 2, 3))); |
| 132 | int SHA256_Final(unsigned char *md, SHA256_CTX *c); | 134 | int SHA256_Final(unsigned char *md, SHA256_CTX *c); |
| 133 | unsigned char *SHA256(const unsigned char *d, size_t n, unsigned char *md) | 135 | unsigned char *SHA256(const unsigned char *d, size_t n, unsigned char *md) |
| 136 | __attribute__ ((__nonnull__(3))) | ||
| 134 | __attribute__ ((__bounded__(__buffer__, 1, 2))); | 137 | __attribute__ ((__bounded__(__buffer__, 1, 2))); |
| 135 | void SHA256_Transform(SHA256_CTX *c, const unsigned char *data); | 138 | void SHA256_Transform(SHA256_CTX *c, const unsigned char *data); |
| 136 | #endif | 139 | #endif |
| @@ -172,12 +175,14 @@ int SHA384_Update(SHA512_CTX *c, const void *data, size_t len) | |||
| 172 | __attribute__ ((__bounded__(__buffer__, 2, 3))); | 175 | __attribute__ ((__bounded__(__buffer__, 2, 3))); |
| 173 | int SHA384_Final(unsigned char *md, SHA512_CTX *c); | 176 | int SHA384_Final(unsigned char *md, SHA512_CTX *c); |
| 174 | unsigned char *SHA384(const unsigned char *d, size_t n, unsigned char *md) | 177 | unsigned char *SHA384(const unsigned char *d, size_t n, unsigned char *md) |
| 178 | __attribute__ ((__nonnull__(3))) | ||
| 175 | __attribute__ ((__bounded__(__buffer__, 1, 2))); | 179 | __attribute__ ((__bounded__(__buffer__, 1, 2))); |
| 176 | int SHA512_Init(SHA512_CTX *c); | 180 | int SHA512_Init(SHA512_CTX *c); |
| 177 | int SHA512_Update(SHA512_CTX *c, const void *data, size_t len) | 181 | int SHA512_Update(SHA512_CTX *c, const void *data, size_t len) |
| 178 | __attribute__ ((__bounded__(__buffer__, 2, 3))); | 182 | __attribute__ ((__bounded__(__buffer__, 2, 3))); |
| 179 | int SHA512_Final(unsigned char *md, SHA512_CTX *c); | 183 | int SHA512_Final(unsigned char *md, SHA512_CTX *c); |
| 180 | unsigned char *SHA512(const unsigned char *d, size_t n, unsigned char *md) | 184 | unsigned char *SHA512(const unsigned char *d, size_t n, unsigned char *md) |
| 185 | __attribute__ ((__nonnull__(3))) | ||
| 181 | __attribute__ ((__bounded__(__buffer__, 1, 2))); | 186 | __attribute__ ((__bounded__(__buffer__, 1, 2))); |
| 182 | void SHA512_Transform(SHA512_CTX *c, const unsigned char *data); | 187 | void SHA512_Transform(SHA512_CTX *c, const unsigned char *data); |
| 183 | #endif | 188 | #endif |
diff --git a/src/lib/libcrypto/sha/sha1.c b/src/lib/libcrypto/sha/sha1.c index 32007d5d52..52338812db 100644 --- a/src/lib/libcrypto/sha/sha1.c +++ b/src/lib/libcrypto/sha/sha1.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: sha1.c,v 1.14 2024/03/28 07:06:12 jsing Exp $ */ | 1 | /* $OpenBSD: sha1.c,v 1.15 2024/06/01 07:36:16 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -496,10 +496,6 @@ unsigned char * | |||
| 496 | SHA1(const unsigned char *d, size_t n, unsigned char *md) | 496 | SHA1(const unsigned char *d, size_t n, unsigned char *md) |
| 497 | { | 497 | { |
| 498 | SHA_CTX c; | 498 | SHA_CTX c; |
| 499 | static unsigned char m[SHA_DIGEST_LENGTH]; | ||
| 500 | |||
| 501 | if (md == NULL) | ||
| 502 | md = m; | ||
| 503 | 499 | ||
| 504 | if (!SHA1_Init(&c)) | 500 | if (!SHA1_Init(&c)) |
| 505 | return NULL; | 501 | return NULL; |
diff --git a/src/lib/libcrypto/sha/sha256.c b/src/lib/libcrypto/sha/sha256.c index d18e8d219d..ab00c17878 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.31 2024/03/28 04:23:02 jsing Exp $ */ | 1 | /* $OpenBSD: sha256.c,v 1.32 2024/06/01 07:36:16 tb 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 | * |
| @@ -317,10 +317,6 @@ unsigned char * | |||
| 317 | SHA224(const unsigned char *d, size_t n, unsigned char *md) | 317 | SHA224(const unsigned char *d, size_t n, unsigned char *md) |
| 318 | { | 318 | { |
| 319 | SHA256_CTX c; | 319 | SHA256_CTX c; |
| 320 | static unsigned char m[SHA224_DIGEST_LENGTH]; | ||
| 321 | |||
| 322 | if (md == NULL) | ||
| 323 | md = m; | ||
| 324 | 320 | ||
| 325 | SHA224_Init(&c); | 321 | SHA224_Init(&c); |
| 326 | SHA256_Update(&c, d, n); | 322 | SHA256_Update(&c, d, n); |
| @@ -479,10 +475,6 @@ unsigned char * | |||
| 479 | SHA256(const unsigned char *d, size_t n, unsigned char *md) | 475 | SHA256(const unsigned char *d, size_t n, unsigned char *md) |
| 480 | { | 476 | { |
| 481 | SHA256_CTX c; | 477 | SHA256_CTX c; |
| 482 | static unsigned char m[SHA256_DIGEST_LENGTH]; | ||
| 483 | |||
| 484 | if (md == NULL) | ||
| 485 | md = m; | ||
| 486 | 478 | ||
| 487 | SHA256_Init(&c); | 479 | SHA256_Init(&c); |
| 488 | SHA256_Update(&c, d, n); | 480 | SHA256_Update(&c, d, n); |
diff --git a/src/lib/libcrypto/sha/sha512.c b/src/lib/libcrypto/sha/sha512.c index 360a5c29fb..7a2a40d3df 100644 --- a/src/lib/libcrypto/sha/sha512.c +++ b/src/lib/libcrypto/sha/sha512.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: sha512.c,v 1.41 2023/07/08 12:24:10 beck Exp $ */ | 1 | /* $OpenBSD: sha512.c,v 1.42 2024/06/01 07:36:16 tb 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 | * |
| @@ -345,10 +345,6 @@ unsigned char * | |||
| 345 | SHA384(const unsigned char *d, size_t n, unsigned char *md) | 345 | SHA384(const unsigned char *d, size_t n, unsigned char *md) |
| 346 | { | 346 | { |
| 347 | SHA512_CTX c; | 347 | SHA512_CTX c; |
| 348 | static unsigned char m[SHA384_DIGEST_LENGTH]; | ||
| 349 | |||
| 350 | if (md == NULL) | ||
| 351 | md = m; | ||
| 352 | 348 | ||
| 353 | SHA384_Init(&c); | 349 | SHA384_Init(&c); |
| 354 | SHA512_Update(&c, d, n); | 350 | SHA512_Update(&c, d, n); |
| @@ -498,10 +494,6 @@ unsigned char * | |||
| 498 | SHA512(const unsigned char *d, size_t n, unsigned char *md) | 494 | SHA512(const unsigned char *d, size_t n, unsigned char *md) |
| 499 | { | 495 | { |
| 500 | SHA512_CTX c; | 496 | SHA512_CTX c; |
| 501 | static unsigned char m[SHA512_DIGEST_LENGTH]; | ||
| 502 | |||
| 503 | if (md == NULL) | ||
| 504 | md = m; | ||
| 505 | 497 | ||
| 506 | SHA512_Init(&c); | 498 | SHA512_Init(&c); |
| 507 | SHA512_Update(&c, d, n); | 499 | SHA512_Update(&c, d, n); |
diff --git a/src/lib/libcrypto/whrlpool/whirlpool.c b/src/lib/libcrypto/whrlpool/whirlpool.c index e1e0f7a899..80e147c3b5 100644 --- a/src/lib/libcrypto/whrlpool/whirlpool.c +++ b/src/lib/libcrypto/whrlpool/whirlpool.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: whirlpool.c,v 1.2 2024/03/30 03:45:47 joshua Exp $ */ | 1 | /* $OpenBSD: whirlpool.c,v 1.3 2024/06/01 07:36:17 tb Exp $ */ |
| 2 | /** | 2 | /** |
| 3 | * The Whirlpool hashing function. | 3 | * The Whirlpool hashing function. |
| 4 | * | 4 | * |
| @@ -846,10 +846,7 @@ unsigned char * | |||
| 846 | WHIRLPOOL(const void *inp, size_t bytes, unsigned char *md) | 846 | WHIRLPOOL(const void *inp, size_t bytes, unsigned char *md) |
| 847 | { | 847 | { |
| 848 | WHIRLPOOL_CTX ctx; | 848 | WHIRLPOOL_CTX ctx; |
| 849 | static unsigned char m[WHIRLPOOL_DIGEST_LENGTH]; | ||
| 850 | 849 | ||
| 851 | if (md == NULL) | ||
| 852 | md = m; | ||
| 853 | WHIRLPOOL_Init(&ctx); | 850 | WHIRLPOOL_Init(&ctx); |
| 854 | WHIRLPOOL_Update(&ctx, inp, bytes); | 851 | WHIRLPOOL_Update(&ctx, inp, bytes); |
| 855 | WHIRLPOOL_Final(md, &ctx); | 852 | WHIRLPOOL_Final(md, &ctx); |
diff --git a/src/lib/libcrypto/whrlpool/whrlpool.h b/src/lib/libcrypto/whrlpool/whrlpool.h index 875d34f7d3..1b4fac1993 100644 --- a/src/lib/libcrypto/whrlpool/whrlpool.h +++ b/src/lib/libcrypto/whrlpool/whrlpool.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: whrlpool.h,v 1.5 2014/07/10 22:45:58 jsing Exp $ */ | 1 | /* $OpenBSD: whrlpool.h,v 1.6 2024/06/01 07:36:17 tb Exp $ */ |
| 2 | 2 | ||
| 3 | #include <stddef.h> | 3 | #include <stddef.h> |
| 4 | 4 | ||
| @@ -28,10 +28,13 @@ typedef struct { | |||
| 28 | 28 | ||
| 29 | #ifndef OPENSSL_NO_WHIRLPOOL | 29 | #ifndef OPENSSL_NO_WHIRLPOOL |
| 30 | int WHIRLPOOL_Init (WHIRLPOOL_CTX *c); | 30 | int WHIRLPOOL_Init (WHIRLPOOL_CTX *c); |
| 31 | int WHIRLPOOL_Update (WHIRLPOOL_CTX *c,const void *inp,size_t bytes); | 31 | int WHIRLPOOL_Update (WHIRLPOOL_CTX *c,const void *inp,size_t bytes) |
| 32 | __attribute__ ((__bounded__(__buffer__, 2, 3))); | ||
| 32 | void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c,const void *inp,size_t bits); | 33 | void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c,const void *inp,size_t bits); |
| 33 | int WHIRLPOOL_Final (unsigned char *md,WHIRLPOOL_CTX *c); | 34 | int WHIRLPOOL_Final (unsigned char *md,WHIRLPOOL_CTX *c); |
| 34 | unsigned char *WHIRLPOOL(const void *inp,size_t bytes,unsigned char *md); | 35 | unsigned char *WHIRLPOOL(const void *inp,size_t bytes,unsigned char *md) |
| 36 | __attribute__ ((__nonnull__(3))) | ||
| 37 | __attribute__ ((__bounded__(__buffer__, 1, 2))); | ||
| 35 | #endif | 38 | #endif |
| 36 | 39 | ||
| 37 | #ifdef __cplusplus | 40 | #ifdef __cplusplus |
