summaryrefslogtreecommitdiff
path: root/scp.c
diff options
context:
space:
mode:
Diffstat (limited to 'scp.c')
-rw-r--r--scp.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/scp.c b/scp.c
index 27a502964..3dcd194ea 100644
--- a/scp.c
+++ b/scp.c
@@ -545,9 +545,17 @@ syserr: run_err("%s: %s", name, strerror(errno));
545 goto next; 545 goto next;
546 } 546 }
547#define FILEMODEMASK (S_ISUID|S_ISGID|S_IRWXU|S_IRWXG|S_IRWXO) 547#define FILEMODEMASK (S_ISUID|S_ISGID|S_IRWXU|S_IRWXG|S_IRWXO)
548#ifdef HAVE_INT64_T
548 snprintf(buf, sizeof buf, "C%04o %lld %s\n", 549 snprintf(buf, sizeof buf, "C%04o %lld %s\n",
549 (u_int) (stb.st_mode & FILEMODEMASK), 550 (u_int) (stb.st_mode & FILEMODEMASK),
550 (long long) stb.st_size, last); 551 (long long) stb.st_size, last);
552#else
553 /* XXX: Handle integer overflow? */
554 snprintf(buf, sizeof buf, "C%04o %ld %s\n",
555 (u_int) (stb.st_mode & FILEMODEMASK),
556 (long) stb.st_size, last);
557#endif
558
551 if (verbose_mode) { 559 if (verbose_mode) {
552 fprintf(stderr, "Sending file modes: %s", buf); 560 fprintf(stderr, "Sending file modes: %s", buf);
553 fflush(stderr); 561 fflush(stderr);