diff options
author | 2003-02-21 12:39:17 +0000 | |
---|---|---|
committer | 2003-02-21 12:39:17 +0000 | |
commit | d2d5dc6d681a517b0a5f0f249b075b19bc3f6f3c (patch) | |
tree | cb6bd6e6c0816e4562f04e16f648532238bc296a /lib/libssl/src | |
parent | re-allow set loginterface none (diff) | |
download | wireguard-openbsd-d2d5dc6d681a517b0a5f0f249b075b19bc3f6f3c.tar.xz wireguard-openbsd-d2d5dc6d681a517b0a5f0f249b075b19bc3f6f3c.zip |
check for size < 0 when allocating memory, from openssl (-r1.34)
Diffstat (limited to 'lib/libssl/src')
-rw-r--r-- | lib/libssl/src/crypto/mem.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/libssl/src/crypto/mem.c b/lib/libssl/src/crypto/mem.c index a7826908e61..87d0ebc7144 100644 --- a/lib/libssl/src/crypto/mem.c +++ b/lib/libssl/src/crypto/mem.c @@ -251,6 +251,8 @@ void *CRYPTO_malloc_locked(int num, const char *file, int line) { void *ret = NULL; + if (num < 0) return NULL; + allow_customize = 0; if (malloc_debug_func != NULL) { @@ -283,6 +285,8 @@ void *CRYPTO_malloc(int num, const char *file, int line) { void *ret = NULL; + if (num < 0) return NULL; + allow_customize = 0; if (malloc_debug_func != NULL) { @@ -306,6 +310,8 @@ void *CRYPTO_realloc(void *str, int num, const char *file, int line) if (str == NULL) return CRYPTO_malloc(num, file, line); + if (num < 0) return NULL; + if (realloc_debug_func != NULL) realloc_debug_func(str, NULL, num, file, line, 0); ret = realloc_ex_func(str,num,file,line); |