diff options
author | 2018-05-13 13:49:04 +0000 | |
---|---|---|
committer | 2018-05-13 13:49:04 +0000 | |
commit | a8d598235d4cdfa28994d48dda4f4b387a80a22b (patch) | |
tree | 6916af2bdca52b119d162f63cf7af7a58b3274a9 | |
parent | Use recallocarray() instead of OPENSSL_realloc_clean(). (diff) | |
download | wireguard-openbsd-a8d598235d4cdfa28994d48dda4f4b387a80a22b.tar.xz wireguard-openbsd-a8d598235d4cdfa28994d48dda4f4b387a80a22b.zip |
Turn CRYPTO_realloc_clean() into a recallocarray() wrapper.
ok beck@ tb@
-rw-r--r-- | lib/libcrypto/malloc-wrapper.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/lib/libcrypto/malloc-wrapper.c b/lib/libcrypto/malloc-wrapper.c index 12867387bf7..cb9a31186dd 100644 --- a/lib/libcrypto/malloc-wrapper.c +++ b/lib/libcrypto/malloc-wrapper.c @@ -1,4 +1,4 @@ -/* $OpenBSD: malloc-wrapper.c,v 1.6 2017/05/02 03:59:44 deraadt Exp $ */ +/* $OpenBSD: malloc-wrapper.c,v 1.7 2018/05/13 13:49:04 jsing Exp $ */ /* * Copyright (c) 2014 Bob Beck * @@ -148,7 +148,6 @@ CRYPTO_realloc(void *ptr, int num, const char *file, int line) { if (num <= 0) return NULL; - return realloc(ptr, num); } @@ -156,18 +155,12 @@ void * CRYPTO_realloc_clean(void *ptr, int old_len, int num, const char *file, int line) { - void *ret = NULL; - if (num <= 0) return NULL; + /* Original does not support shrinking. */ if (num < old_len) - return NULL; /* original does not support shrinking */ - ret = malloc(num); - if (ret && ptr && old_len > 0) { - memcpy(ret, ptr, old_len); - freezero(ptr, old_len); - } - return ret; + return NULL; + return recallocarray(ptr, old_len, num, 1); } void |