]> andersk Git - openssh.git/commitdiff
- deraadt@cvs.openbsd.org 2005/11/12 18:38:15
authordtucker <dtucker>
Tue, 22 Nov 2005 08:38:06 +0000 (08:38 +0000)
committerdtucker <dtucker>
Tue, 22 Nov 2005 08:38:06 +0000 (08:38 +0000)
     [scp.c]
     avoid close(-1), as in rcp; ok cloder

ChangeLog
scp.c

index b2c67ab6677c60267fbc439e03d50fa47aa459de..bba41890b8d2d8e6600987270eed77f446309f09 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,9 @@
    - deraadt@cvs.openbsd.org 2005/11/12 18:37:59
      [ssh-add.c]
      space
+   - deraadt@cvs.openbsd.org 2005/11/12 18:38:15
+     [scp.c]
+     avoid close(-1), as in rcp; ok cloder
 
 20051120
  - (dtucker) [openbsd-compat/openssl-compat.h] Add comment explaining what
diff --git a/scp.c b/scp.c
index 58c00442f53c9f1139197d32bdb865391313b34c..59285abca0c073c056e08c95d184ff63ccc9f5a2 100644 (file)
--- a/scp.c
+++ b/scp.c
@@ -71,7 +71,7 @@
  */
 
 #include "includes.h"
-RCSID("$OpenBSD: scp.c,v 1.126 2005/09/13 23:40:07 djm Exp $");
+RCSID("$OpenBSD: scp.c,v 1.127 2005/11/12 18:38:15 deraadt Exp $");
 
 #include "xmalloc.h"
 #include "atomicio.h"
@@ -571,7 +571,10 @@ syserr:                    run_err("%s: %s", name, strerror(errno));
                if (response() < 0)
                        goto next;
                if ((bp = allocbuf(&buffer, fd, 2048)) == NULL) {
-next:                  (void) close(fd);
+next:                  if (fd != -1) {
+                               (void) close(fd);
+                               fd = -1;
+                       }
                        continue;
                }
                if (showprogress)
@@ -600,8 +603,11 @@ next:                      (void) close(fd);
                if (showprogress)
                        stop_progress_meter();
 
-               if (close(fd) < 0 && !haderr)
-                       haderr = errno;
+               if (fd != -1) {
+                       if (close(fd) < 0 && !haderr)
+                               haderr = errno;
+                       fd = -1;
+               }
                if (!haderr)
                        (void) atomicio(vwrite, remout, "", 1);
                else
This page took 0.039945 seconds and 5 git commands to generate.