engines/e_capi.c: accommodate recent DSA_SIG_[get|set]0 changes.
[openssl.git] / crypto / o_str.c
index 29c324f4746de061a9d6b702f7130fbee479827a..beabec0ddc14a75b5ca3dab3a97aa93818695ae2 100644 (file)
@@ -198,7 +198,12 @@ char *OPENSSL_buf2hexstr(const unsigned char *buffer, long len)
     const unsigned char *p;
     int i;
 
-    if ((tmp = OPENSSL_malloc(len * 3 + 1)) == NULL) {
+    if (len == 0)
+    {
+        return OPENSSL_zalloc(1);
+    }
+
+    if ((tmp = OPENSSL_malloc(len * 3)) == NULL) {
         CRYPTOerr(CRYPTO_F_OPENSSL_BUF2HEXSTR, ERR_R_MALLOC_FAILURE);
         return NULL;
     }