diff options
Diffstat (limited to 'providers/implementations/kdfs/sshkdf.c')
-rw-r--r-- | providers/implementations/kdfs/sshkdf.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/providers/implementations/kdfs/sshkdf.c b/providers/implementations/kdfs/sshkdf.c index 137299235a..72d7c607dc 100644 --- a/providers/implementations/kdfs/sshkdf.c +++ b/providers/implementations/kdfs/sshkdf.c @@ -72,12 +72,14 @@ static void kdf_sshkdf_free(void *vctx) static void kdf_sshkdf_reset(void *vctx) { KDF_SSHKDF *ctx = (KDF_SSHKDF *)vctx; + void *provctx = ctx->provctx; ossl_prov_digest_reset(&ctx->digest); OPENSSL_clear_free(ctx->key, ctx->key_len); OPENSSL_clear_free(ctx->xcghash, ctx->xcghash_len); OPENSSL_clear_free(ctx->session_id, ctx->session_id_len); memset(ctx, 0, sizeof(*ctx)); + ctx->provctx = provctx; } static int sshkdf_set_membuf(unsigned char **dst, size_t *dst_len, |