diff options
Diffstat (limited to 'src/lib')
-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 |