summaryrefslogtreecommitdiff
path: root/usr.bin/ssh/scp.c
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2001-04-06 16:47:00 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2001-04-06 16:47:00 +0000
commit6209f66f007f22b2c63cf1f11d43aab847702490 (patch)
tree87caaf40a559792c5ff172d586921c273c8efb76 /usr.bin/ssh/scp.c
parent4de5170396cc9f30d77a2b1216d1a35e1c90cf8e (diff)
remove trailing / from source paths; fixes pr#1756
Diffstat (limited to 'usr.bin/ssh/scp.c')
-rw-r--r--usr.bin/ssh/scp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/usr.bin/ssh/scp.c b/usr.bin/ssh/scp.c
index b42b9be62cb..a19a19d6b46 100644
--- a/usr.bin/ssh/scp.c
+++ b/usr.bin/ssh/scp.c
@@ -75,7 +75,7 @@
*/
#include "includes.h"
-RCSID("$OpenBSD: scp.c,v 1.64 2001/03/28 20:04:38 stevesk Exp $");
+RCSID("$OpenBSD: scp.c,v 1.65 2001/04/06 16:46:59 deraadt Exp $");
#include "xmalloc.h"
#include "atomicio.h"
@@ -483,10 +483,14 @@ source(argc, argv)
off_t i;
int amt, fd, haderr, indx, result;
char *last, *name, buf[2048];
+ int len;
for (indx = 0; indx < argc; ++indx) {
name = argv[indx];
statbytes = 0;
+ len = strlen(name);
+ while (len > 1 && name[len-1] == '/')
+ name[--len] = '\0';
if ((fd = open(name, O_RDONLY, 0)) < 0)
goto syserr;
if (fstat(fd, &stb) < 0) {