memleaks; found by valgrind
authordjm <djm@openbsd.org>
Mon, 16 Jul 2018 03:09:13 +0000 (03:09 +0000)
committerdjm <djm@openbsd.org>
Mon, 16 Jul 2018 03:09:13 +0000 (03:09 +0000)
usr.bin/ssh/hostfile.c
usr.bin/ssh/packet.c

index 14aca7c..9dc64b7 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: hostfile.c,v 1.72 2018/06/06 18:29:18 markus Exp $ */
+/* $OpenBSD: hostfile.c,v 1.73 2018/07/16 03:09:13 djm Exp $ */
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -680,11 +680,11 @@ hostkeys_foreach(const char *path, hostkeys_foreach_fn *callback, void *ctx,
                linenum++;
                line[strcspn(line, "\n")] = '\0';
 
+               free(lineinfo.line);
                sshkey_free(lineinfo.key);
                memset(&lineinfo, 0, sizeof(lineinfo));
                lineinfo.path = path;
                lineinfo.linenum = linenum;
-               free(lineinfo.line);
                lineinfo.line = xstrdup(line);
                lineinfo.marker = MRK_NONE;
                lineinfo.status = HKF_STATUS_OK;
index eab5a58..ab9b198 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: packet.c,v 1.276 2018/07/09 21:03:30 markus Exp $ */
+/* $OpenBSD: packet.c,v 1.277 2018/07/16 03:09:13 djm Exp $ */
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
  * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -611,6 +611,8 @@ ssh_packet_close_internal(struct ssh *ssh, int do_close)
        cipher_free(state->receive_context);
        state->send_context = state->receive_context = NULL;
        if (do_close) {
+               free(ssh->local_ipaddr);
+               ssh->local_ipaddr = NULL;
                free(ssh->remote_ipaddr);
                ssh->remote_ipaddr = NULL;
                free(ssh->state);