summaryrefslogtreecommitdiffstats
path: root/providers/implementations/kdfs/sshkdf.c
diff options
context:
space:
mode:
Diffstat (limited to 'providers/implementations/kdfs/sshkdf.c')
-rw-r--r--providers/implementations/kdfs/sshkdf.c2
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,