aboutsummaryrefslogtreecommitdiffstats
path: root/crypto/dh
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>1999-09-01 23:50:43 +0000
committerDr. Stephen Henson <steve@openssl.org>1999-09-01 23:50:43 +0000
commitac8b4ee04a41f89f59e080ae792fe130574e3f36 (patch)
treec0b5420de18469e14daa9129220e07dca1d710d6 /crypto/dh
parent2d4287da348ae1f8fab2dafa46693c7d7eeef3ed (diff)
downloadopenssl-ac8b4ee04a41f89f59e080ae792fe130574e3f36.tar.gz
Make DH_free() free up any ex_data and also call the finish method.
Diffstat (limited to 'crypto/dh')
-rw-r--r--crypto/dh/dh_lib.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/crypto/dh/dh_lib.c b/crypto/dh/dh_lib.c
index ef622629f7..48b9db2ac0 100644
--- a/crypto/dh/dh_lib.c
+++ b/crypto/dh/dh_lib.c
@@ -143,6 +143,10 @@ void DH_free(DH *r)
}
#endif
+ CRYPTO_free_ex_data(dh_meth, (char *)r, &r->ex_data);
+
+ if(r->meth->finish) r->meth->finish(r);
+
if (r->p != NULL) BN_clear_free(r->p);
if (r->g != NULL) BN_clear_free(r->g);
if (r->pub_key != NULL) BN_clear_free(r->pub_key);