summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2001-03-19 12:45:02 +1100
committerDamien Miller <djm@mindrot.org>2001-03-19 12:45:02 +1100
commitffd0e10b9c44201017d17ef4e2d4b21bdfa7b393 (patch)
tree2b575f5c27dceadf5c82da218bbb599e0640e49a
parent2d70f98220c8aaac29ac6fb47b86750209dacb01 (diff)
- (djm) Make scp work on systems without 64-bit ints
-rw-r--r--ChangeLog3
-rw-r--r--scp.c8
2 files changed, 10 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 62f7b1186..94052a5ed 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -6,6 +6,7 @@
6 - markus@cvs.openbsd.org 2001/03/18 12:07:52 6 - markus@cvs.openbsd.org 2001/03/18 12:07:52
7 [auth-options.c] 7 [auth-options.c]
8 ignore permitopen="host:port" if AllowTcpForwarding==no 8 ignore permitopen="host:port" if AllowTcpForwarding==no
9 - (djm) Make scp work on systems without 64-bit ints
9 10
1020010318 1120010318
11 - (bal) Fixed scp type casing issue which causes "scp: protocol error: 12 - (bal) Fixed scp type casing issue which causes "scp: protocol error:
@@ -4605,4 +4606,4 @@
4605 - Wrote replacements for strlcpy and mkdtemp 4606 - Wrote replacements for strlcpy and mkdtemp
4606 - Released 1.0pre1 4607 - Released 1.0pre1
4607 4608
4608$Id: ChangeLog,v 1.974 2001/03/19 00:13:46 mouring Exp $ 4609$Id: ChangeLog,v 1.975 2001/03/19 01:45:02 djm Exp $
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);