diff options
Diffstat (limited to 'src/lib/libcrypto/evp/p_verify.c')
-rw-r--r-- | src/lib/libcrypto/evp/p_verify.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/lib/libcrypto/evp/p_verify.c b/src/lib/libcrypto/evp/p_verify.c index dcb54f3abb..d854d743a5 100644 --- a/src/lib/libcrypto/evp/p_verify.c +++ b/src/lib/libcrypto/evp/p_verify.c | |||
@@ -85,8 +85,10 @@ int EVP_VerifyFinal(EVP_MD_CTX *ctx, unsigned char *sigbuf, | |||
85 | EVPerr(EVP_F_EVP_VERIFYFINAL,EVP_R_WRONG_PUBLIC_KEY_TYPE); | 85 | EVPerr(EVP_F_EVP_VERIFYFINAL,EVP_R_WRONG_PUBLIC_KEY_TYPE); |
86 | return(-1); | 86 | return(-1); |
87 | } | 87 | } |
88 | EVP_MD_CTX_copy(&tmp_ctx,ctx); | 88 | EVP_MD_CTX_init(&tmp_ctx); |
89 | EVP_DigestFinal(&tmp_ctx,&(m[0]),&m_len); | 89 | EVP_MD_CTX_copy_ex(&tmp_ctx,ctx); |
90 | EVP_DigestFinal_ex(&tmp_ctx,&(m[0]),&m_len); | ||
91 | EVP_MD_CTX_cleanup(&tmp_ctx); | ||
90 | if (ctx->digest->verify == NULL) | 92 | if (ctx->digest->verify == NULL) |
91 | { | 93 | { |
92 | EVPerr(EVP_F_EVP_VERIFYFINAL,EVP_R_NO_VERIFY_FUNCTION_CONFIGURED); | 94 | EVPerr(EVP_F_EVP_VERIFYFINAL,EVP_R_NO_VERIFY_FUNCTION_CONFIGURED); |