diff --git a/crypto/evp/digest.c b/crypto/evp/digest.c index d6abcfe1d6..bd520456b1 100644 --- a/crypto/evp/digest.c +++ b/crypto/evp/digest.c @@ -203,6 +203,12 @@ int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl) { ctx->update = type->update; ctx->md_data=OPENSSL_malloc(type->ctx_size); + if (ctx->md_data == NULL) + { + EVPerr(EVP_F_EVP_DIGESTINIT_EX, + ERR_R_MALLOC_FAILURE); + return 0; + } } } #ifndef OPENSSL_NO_ENGINE