diff options
author | Rich Salz <rsalz@akamai.com> | 2015-08-25 13:25:58 -0400 |
---|---|---|
committer | Rich Salz <rsalz@openssl.org> | 2015-09-02 22:05:37 -0400 |
commit | b51bce942023325e727ca4225252d06c49d8f2b7 (patch) | |
tree | 59bbdee7553f9132a86aca17752a9a358a6355e2 /crypto/mem.c | |
parent | 66e87a9f0990198079bf4d2b3ce87581ad5b6b10 (diff) |
Add and use OPENSSL_zalloc
There are many places (nearly 50) where we malloc and then memset.
Add an OPENSSL_zalloc routine to encapsulate that.
(Missed one conversion; thanks Richard)
Also fixes GH328
Reviewed-by: Richard Levitte <levitte@openssl.org>
Diffstat (limited to 'crypto/mem.c')
-rw-r--r-- | crypto/mem.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/crypto/mem.c b/crypto/mem.c index 8b9c8c3805..33a76d2d08 100644 --- a/crypto/mem.c +++ b/crypto/mem.c @@ -312,14 +312,21 @@ void *CRYPTO_malloc(int num, const char *file, int line) return ret; } +void *CRYPTO_zalloc(int num, const char *file, int line) +{ + void *ret = CRYPTO_malloc(num, file, line); + + if (ret != NULL) + memset(ret, 0, num); + return ret; +} + char *CRYPTO_strdup(const char *str, const char *file, int line) { char *ret = CRYPTO_malloc(strlen(str) + 1, file, line); - if (ret == NULL) - return NULL; - - strcpy(ret, str); + if (ret != NULL) + strcpy(ret, str); return ret; } |