From: Pieter Lexis Date: Wed, 5 Sep 2018 07:40:48 +0000 (+0200) Subject: Free PKEY_CTX when needed X-Git-Tag: dnsdist-1.3.3~70^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=aa68943a9f5976a08705446db864da22849f60e7;p=thirdparty%2Fpdns.git Free PKEY_CTX when needed --- diff --git a/pdns/opensslsigners.cc b/pdns/opensslsigners.cc index 8ed251761b..4a6600af6d 100644 --- a/pdns/opensslsigners.cc +++ b/pdns/opensslsigners.cc @@ -990,11 +990,14 @@ void OpenSSLEDDSADNSCryptoKeyEngine::create(unsigned int bits) throw runtime_error(getName()+" context initialization failed"); } if (EVP_PKEY_keygen_init(pctx) < 1) { + EVP_PKEY_CTX_free(pctx); throw runtime_error(getName()+" keygen initialization failed"); } if (EVP_PKEY_keygen(pctx, &d_edkey) < 1) { + EVP_PKEY_CTX_free(pctx); throw runtime_error(getName()+" key generation failed"); } + EVP_PKEY_CTX_free(pctx); } DNSCryptoKeyEngine::storvector_t OpenSSLEDDSADNSCryptoKeyEngine::convertToISCVector() const