diff options
author | Ben Lindstrom <mouring@eviladmin.org> | 2002-02-26 18:02:43 +0000 |
---|---|---|
committer | Ben Lindstrom <mouring@eviladmin.org> | 2002-02-26 18:02:43 +0000 |
commit | 021fcd3a36169ae53b53e9fc7bd2340ee9a5b535 (patch) | |
tree | 3eaf67fa7152d6d1cb1fee896fde1a5801a0bd10 | |
parent | 13c5d3b37095a990e6ab836ebe6facddc0ac9cff (diff) |
- markus@cvs.openbsd.org 2002/02/24 16:57:19
[sftp-client.c]
early close(), missing free; ok stevesk@
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sftp-client.c | 5 |
2 files changed, 7 insertions, 3 deletions
@@ -29,6 +29,9 @@ - stevesk@cvs.openbsd.org 2002/02/24 16:09:52 [sshd.c] use u_char* here; ok markus@ + - markus@cvs.openbsd.org 2002/02/24 16:57:19 + [sftp-client.c] + early close(), missing free; ok stevesk@ 20020225 - (bal) Last AIX patch. Moved aix_usrinfo() outside of do_setuserconext() @@ -7702,4 +7705,4 @@ - Wrote replacements for strlcpy and mkdtemp - Released 1.0pre1 -$Id: ChangeLog,v 1.1881 2002/02/26 18:00:48 mouring Exp $ +$Id: ChangeLog,v 1.1882 2002/02/26 18:02:43 mouring Exp $ diff --git a/sftp-client.c b/sftp-client.c index 481341c6..17ac14a9 100644 --- a/sftp-client.c +++ b/sftp-client.c @@ -28,7 +28,7 @@ /* XXX: copy between two remote sites */ #include "includes.h" -RCSID("$OpenBSD: sftp-client.c,v 1.23 2002/02/13 00:59:23 djm Exp $"); +RCSID("$OpenBSD: sftp-client.c,v 1.24 2002/02/24 16:57:19 markus Exp $"); #if defined(HAVE_SYS_QUEUE_H) && !defined(HAVE_BOGUS_SYS_QUEUE_H) #include <sys/queue.h> @@ -799,7 +799,6 @@ do_download(struct sftp_conn *conn, char *remote_path, char *local_path, handle = get_handle(conn->fd_in, id, &handle_len); if (handle == NULL) { buffer_free(&msg); - close(local_fd); return(-1); } @@ -807,6 +806,8 @@ do_download(struct sftp_conn *conn, char *remote_path, char *local_path, if (local_fd == -1) { error("Couldn't open local file \"%s\" for writing: %s", local_path, strerror(errno)); + buffer_free(&msg); + xfree(handle); return(-1); } |