diff options
Diffstat (limited to 'crypto/hmac/hmac.c')
-rw-r--r-- | crypto/hmac/hmac.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/crypto/hmac/hmac.c b/crypto/hmac/hmac.c index c45e001492..5c99f03e26 100644 --- a/crypto/hmac/hmac.c +++ b/crypto/hmac/hmac.c @@ -147,6 +147,16 @@ void HMAC_CTX_init(HMAC_CTX *ctx) EVP_MD_CTX_init(&ctx->md_ctx); } +void HMAC_CTX_copy(HMAC_CTX *dctx, HMAC_CTX *sctx) + { + EVP_MD_CTX_copy(&dctx->i_ctx, &sctx->i_ctx); + EVP_MD_CTX_copy(&dctx->o_ctx, &sctx->o_ctx); + EVP_MD_CTX_copy(&dctx->md_ctx, &sctx->md_ctx); + memcpy(dctx->key, sctx->key, HMAC_MAX_MD_CBLOCK); + dctx->key_length = sctx->key_length; + dctx->md = sctx->md; + } + void HMAC_CTX_cleanup(HMAC_CTX *ctx) { EVP_MD_CTX_cleanup(&ctx->i_ctx); |