From dda1fc57b977763de8a05725daa76df405831009 Mon Sep 17 00:00:00 2001 From: Shubham Mittal Date: Thu, 20 Feb 2025 15:17:43 -0800 Subject: [PATCH] cleanup previous ssl chain/privkey --- ssl/ssl_cert.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ssl/ssl_cert.cc b/ssl/ssl_cert.cc index 8f185a4483..40489720eb 100644 --- a/ssl/ssl_cert.cc +++ b/ssl/ssl_cert.cc @@ -312,8 +312,14 @@ static int cert_set_chain_and_key( CERT_PKEY *cert_pkey = &cert->cert_private_keys[idx]; // Update certificate slot index once all checks have passed. + if (cert_pkey->privatekey) { + cert_pkey->privatekey.reset(); + } cert_pkey->privatekey = UpRef(privkey); cert->key_method = privkey_method; + if (cert_pkey->chain) { + cert_pkey->chain.reset(); + } cert_pkey->chain = std::move(certs_sk); cert->cert_private_key_idx = idx; return 1;