=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/ssh/scp.c,v retrieving revision 1.102.2.1 retrieving revision 1.102.2.2 diff -u -r1.102.2.1 -r1.102.2.2 --- src/usr.bin/ssh/scp.c 2003/09/16 20:50:43 1.102.2.1 +++ src/usr.bin/ssh/scp.c 2004/03/04 18:18:16 1.102.2.2 @@ -71,7 +71,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: scp.c,v 1.102.2.1 2003/09/16 20:50:43 brad Exp $"); +RCSID("$OpenBSD: scp.c,v 1.102.2.2 2004/03/04 18:18:16 brad Exp $"); #include "xmalloc.h" #include "atomicio.h" @@ -88,7 +88,7 @@ arglist args; /* Bandwidth limit */ -off_t limit = 0; +off_t limit_rate = 0; /* Name of current file being transferred. */ char *curfile; @@ -251,7 +251,7 @@ speed = strtod(optarg, &endp); if (speed <= 0 || *endp != '\0') usage(); - limit = speed * 1024; + limit_rate = speed * 1024; break; case 'p': pflag = 1; @@ -267,6 +267,7 @@ verbose_mode = 1; break; case 'q': + addargs(&args, "-q"); showprogress = 0; break; @@ -417,7 +418,8 @@ } if (verbose_mode) fprintf(stderr, "Executing: %s\n", bp); - (void) system(bp); + if (system(bp) != 0) + errs = 1; (void) xfree(bp); } else { /* local to remote */ if (remin == -1) { @@ -578,7 +580,7 @@ haderr = result >= 0 ? EIO : errno; statbytes += result; } - if (limit) + if (limit_rate) bwlimit(amt); } if (showprogress) @@ -670,7 +672,7 @@ return; lamt *= 8; - wait = (double)1000000L * lamt / limit; + wait = (double)1000000L * lamt / limit_rate; bwstart.tv_sec = wait / 1000000L; bwstart.tv_usec = wait % 1000000L; @@ -896,8 +898,8 @@ cp += j; statbytes += j; } while (amt > 0); - - if (limit) + + if (limit_rate) bwlimit(4096); if (count == bp->cnt) { @@ -1001,8 +1003,8 @@ usage(void) { (void) fprintf(stderr, - "usage: scp [-pqrvBC1246] [-F config] [-S program] [-P port]\n" - " [-c cipher] [-i identity] [-l limit] [-o option]\n" + "usage: scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]\n" + " [-l limit] [-o ssh_option] [-P port] [-S program]\n" " [[user@]host1:]file1 [...] [[user@]host2:]file2\n"); exit(1); }