32 lines
985 B
Diff
32 lines
985 B
Diff
diff --git a/modules/ssl/ssl_engine_init.c b/modules/ssl/ssl_engine_init.c
|
|
index ee46db4..c560422 100644
|
|
--- a/modules/ssl/ssl_engine_init.c
|
|
+++ b/modules/ssl/ssl_engine_init.c
|
|
@@ -915,7 +915,7 @@ static void ssl_init_server_certs(server_rec *s,
|
|
const char *rsa_id, *dsa_id;
|
|
#ifndef OPENSSL_NO_EC
|
|
const char *ecc_id;
|
|
- EC_GROUP *ecparams;
|
|
+ EC_GROUP *ecparams = NULL;
|
|
int nid;
|
|
EC_KEY *eckey = NULL;
|
|
#endif
|
|
@@ -988,6 +988,7 @@ static void ssl_init_server_certs(server_rec *s,
|
|
"Custom DH parameters (%d bits) for %s loaded from %s",
|
|
BN_num_bits(dhparams->p), vhost_id,
|
|
mctx->pks->cert_files[0]);
|
|
+ DH_free(dhparams);
|
|
}
|
|
|
|
#ifndef OPENSSL_NO_EC
|
|
@@ -1012,6 +1013,9 @@ static void ssl_init_server_certs(server_rec *s,
|
|
SSL_CTX_set_tmp_ecdh(mctx->ssl_ctx, eckey);
|
|
#endif
|
|
}
|
|
+ if (ecparams) {
|
|
+ EC_GROUP_free(ecparams);
|
|
+ }
|
|
EC_KEY_free(eckey);
|
|
#endif
|
|
}
|