]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
- Merge fix from OpenBSD CVS
authorDamien Miller <djm@mindrot.org>
Fri, 21 Apr 2000 05:55:20 +0000 (15:55 +1000)
committerDamien Miller <djm@mindrot.org>
Fri, 21 Apr 2000 05:55:20 +0000 (15:55 +1000)
  [ssh-agent.c]
  - Fix memory leak per connection. Report from Andy Spiegl <Andy@Spiegl.de>
    via Debian bug #59926

ChangeLog
ssh-agent.c

index c8e2d70d2e420874c539cffacacb39e7c784ac3a..cb810c947bf1b459d9ecdff7b042e88798203e6a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+20000421
+ - Merge fix from OpenBSD CVS
+  [ssh-agent.c]
+  - Fix memory leak per connection. Report from Andy Spiegl <Andy@Spiegl.de>
+    via Debian bug #59926
+
 20000420
  - Make fixpaths work with perl4, patch from Andre Lucas 
    <andre.lucas@dial.pipex.com>
index c9a84a4a02d1c69f64453e490b9fa5715add80b9..fb13ce7e19566b4f0cbfdaba27228788952919c0 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: ssh-agent.c,v 1.29 2000/04/19 07:05:49 deraadt Exp $  */
+/*     $OpenBSD: ssh-agent.c,v 1.30 2000/04/21 00:27:11 djm Exp $      */
 
 /*
  * Author: Tatu Ylonen <ylo@cs.hut.fi>
@@ -9,7 +9,7 @@
  */
 
 #include "includes.h"
-RCSID("$OpenBSD: ssh-agent.c,v 1.29 2000/04/19 07:05:49 deraadt Exp $");
+RCSID("$OpenBSD: ssh-agent.c,v 1.30 2000/04/21 00:27:11 djm Exp $");
 
 #include "ssh.h"
 #include "rsa.h"
@@ -440,6 +440,8 @@ after_select(fd_set *readset, fd_set *writeset)
                                        shutdown(sockets[i].fd, SHUT_RDWR);
                                        close(sockets[i].fd);
                                        sockets[i].type = AUTH_UNUSED;
+                                       buffer_free(&sockets[i].input);
+                                       buffer_free(&sockets[i].output);
                                        break;
                                }
                                buffer_consume(&sockets[i].output, len);
@@ -450,6 +452,8 @@ after_select(fd_set *readset, fd_set *writeset)
                                        shutdown(sockets[i].fd, SHUT_RDWR);
                                        close(sockets[i].fd);
                                        sockets[i].type = AUTH_UNUSED;
+                                       buffer_free(&sockets[i].input);
+                                       buffer_free(&sockets[i].output);
                                        break;
                                }
                                buffer_append(&sockets[i].input, buf, len);