diff options
Diffstat (limited to 'crypto/evp/m_sha1.c')
-rw-r--r-- | crypto/evp/m_sha1.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/crypto/evp/m_sha1.c b/crypto/evp/m_sha1.c index ddc9051794..ea54adad5b 100644 --- a/crypto/evp/m_sha1.c +++ b/crypto/evp/m_sha1.c @@ -63,14 +63,25 @@ #include <openssl/objects.h> #include <openssl/x509.h> +static int init(EVP_MD_CTX *ctx) + { return SHA1_Init(ctx->md_data); } + +static int update(EVP_MD_CTX *ctx,const void *data,unsigned long count) + { return SHA1_Update(ctx->md_data,data,count); } + +static int final(EVP_MD_CTX *ctx,unsigned char *md) + { return SHA1_Final(md,ctx->md_data); } + static const EVP_MD sha1_md= { NID_sha1, NID_sha1WithRSAEncryption, SHA_DIGEST_LENGTH, - SHA1_Init, - SHA1_Update, - SHA1_Final, + 0, + init, + update, + final, + NULL, EVP_PKEY_RSA_method, SHA_CBLOCK, sizeof(EVP_MD *)+sizeof(SHA_CTX), |