diff options
Diffstat (limited to 'providers/implementations/asymciphers/sm2_enc.c')
-rw-r--r-- | providers/implementations/asymciphers/sm2_enc.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/providers/implementations/asymciphers/sm2_enc.c b/providers/implementations/asymciphers/sm2_enc.c index 9577d16e83..ddb2cfc14a 100644 --- a/providers/implementations/asymciphers/sm2_enc.c +++ b/providers/implementations/asymciphers/sm2_enc.c @@ -138,6 +138,8 @@ static void *sm2_dupctx(void *vpsm2ctx) return NULL; *dstctx = *srcctx; + memset(&dstctx->md, 0, sizeof(dstctx->md)); + if (dstctx->key != NULL && !EC_KEY_up_ref(dstctx->key)) { OPENSSL_free(dstctx); return NULL; |