]> andersk Git - openssh.git/blobdiff - scp.c
- (tim) [configure.ac sshd.8] Enable locked account check (a "*LK*" string)
[openssh.git] / scp.c
diff --git a/scp.c b/scp.c
index 58c00442f53c9f1139197d32bdb865391313b34c..a19021f853e87d816998225a72d020aae548aea1 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"
@@ -563,7 +563,7 @@ syserr:                     run_err("%s: %s", name, strerror(errno));
 #define        FILEMODEMASK    (S_ISUID|S_ISGID|S_IRWXU|S_IRWXG|S_IRWXO)
                snprintf(buf, sizeof buf, "C%04o %lld %s\n",
                    (u_int) (stb.st_mode & FILEMODEMASK),
-                   (int64_t)stb.st_size, last);
+                   (long long)stb.st_size, last);
                if (verbose_mode) {
                        fprintf(stderr, "Sending file modes: %s", buf);
                }
@@ -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.036781 seconds and 4 git commands to generate.