diff options
Diffstat (limited to 'openssl/apps/speed.c')
-rw-r--r-- | openssl/apps/speed.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/openssl/apps/speed.c b/openssl/apps/speed.c index 7dcd354e0..7b1acc189 100644 --- a/openssl/apps/speed.c +++ b/openssl/apps/speed.c @@ -2775,6 +2775,11 @@ static void multiblock_speed(const EVP_CIPHER *evp_cipher) inp = OPENSSL_malloc(mblengths[num - 1]); out = OPENSSL_malloc(mblengths[num - 1] + 1024); + if(!inp || !out) { + BIO_printf(bio_err,"Out of memory\n"); + goto end; + } + EVP_CIPHER_CTX_init(&ctx); EVP_EncryptInit_ex(&ctx, evp_cipher, NULL, no_key, no_iv); @@ -2859,7 +2864,10 @@ static void multiblock_speed(const EVP_CIPHER *evp_cipher) fprintf(stdout, "\n"); } - OPENSSL_free(inp); - OPENSSL_free(out); +end: + if(inp) + OPENSSL_free(inp); + if(out) + OPENSSL_free(out); } #endif |