summaryrefslogtreecommitdiffstats
path: root/packet.c
diff options
context:
space:
mode:
authormarkus@openbsd.org <markus@openbsd.org>2020-06-24 15:12:09 +0000
committerDamien Miller <djm@mindrot.org>2020-06-26 15:18:44 +1000
commit07f5f369a25e228a7357ef6c57205f191f073d99 (patch)
tree112b95432f3e0e35d6dd0725d53d668077e647ba /packet.c
parente35995088cd6691a712bfd586bae8084a3a922ba (diff)
upstream: fix kex mem-leak in ssh_packet_close; ok djm
Diffstat (limited to 'packet.c')
-rw-r--r--packet.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/packet.c b/packet.c
index 4cce4133..4780356f 100644
--- a/packet.c
+++ b/packet.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: packet.c,v 1.292 2020/06/24 15:10:38 markus Exp $ */
+/* $OpenBSD: packet.c,v 1.293 2020/06/24 15:12:09 markus Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -616,6 +616,8 @@ ssh_packet_close_internal(struct ssh *ssh, int do_close)
state->newkeys[mode] = NULL;
ssh_clear_newkeys(ssh, mode); /* next keys */
}
+ kex_free(ssh->kex);
+ ssh->kex = NULL;
#ifdef WITH_ZLIB
/* compression state is in shared mem, so we can only release it once */
if (do_close && state->compression_buffer) {