summaryrefslogtreecommitdiffstats
path: root/src/ecdh.c
diff options
context:
space:
mode:
authorAris Adamantiadis <aris@0xbadc0de.be>2011-06-13 14:06:30 +0200
committerAris Adamantiadis <aris@0xbadc0de.be>2011-06-13 14:06:30 +0200
commita3c28f2558481536c03dcfbc2d3b3a7c925b900f (patch)
tree751f9fdc8fffbcbafff090bcd3018dcc78af0cd2 /src/ecdh.c
parentc5a998f47afc0c79c4badfa5f6554ae51ad92e82 (diff)
downloadlibssh-a3c28f2558481536c03dcfbc2d3b3a7c925b900f.tar.gz
libssh-a3c28f2558481536c03dcfbc2d3b3a7c925b900f.tar.xz
libssh-a3c28f2558481536c03dcfbc2d3b3a7c925b900f.zip
Fix memory leak
Diffstat (limited to 'src/ecdh.c')
-rw-r--r--src/ecdh.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ecdh.c b/src/ecdh.c
index 20840c8..05e4ab9 100644
--- a/src/ecdh.c
+++ b/src/ecdh.c
@@ -104,7 +104,8 @@ static int ecdh_build_k(ssh_session session) {
ECDH_compute_key(buffer,len,pubkey,session->next_crypto->ecdh_privkey,NULL);
BN_bin2bn(buffer,len,session->next_crypto->k);
free(buffer);
-
+ EC_KEY_free(session->next_crypto->ecdh_privkey);
+ session->next_crypto->ecdh_privkey=NULL;
#ifdef DEBUG_CRYPTO
ssh_print_hexa("Session server cookie", session->server_kex.cookie, 16);
ssh_print_hexa("Session client cookie", session->client_kex.cookie, 16);