View | Details | Raw Unified | Return to bug 1814 | Differences between
and this patch

Collapse All | Expand All

(-)src/usr.bin/ssh/scp.c:1.164 (-7 / +14 lines)
Lines 1-4 Link Here
1
/* $OpenBSD: scp.c,v 1.164 2008/10/10 04:55:16 stevesk Exp $ */
1
/* $OpenBSD: scp.c,v 1.165 2009/12/20 07:28:36 guenther Exp $ */
2
/*
2
/*
3
 * scp - secure remote copy.  This is basically patched BSD rcp which
3
 * scp - secure remote copy.  This is basically patched BSD rcp which
4
 * uses ssh to do the data transfer (instead of using rcmd).
4
 * uses ssh to do the data transfer (instead of using rcmd).
Lines 228-235 Link Here
228
		close(pout[1]);
228
		close(pout[1]);
229
229
230
		replacearg(&args, 0, "%s", ssh_program);
230
		replacearg(&args, 0, "%s", ssh_program);
231
		if (remuser != NULL)
231
		if (remuser != NULL) {
232
			addargs(&args, "-l%s", remuser);
232
			addargs(&args, "-l");
233
			addargs(&args, "%s", remuser);
234
		}
235
		addargs(&args, "--");
233
		addargs(&args, "%s", host);
236
		addargs(&args, "%s", host);
234
		addargs(&args, "%s", cmd);
237
		addargs(&args, "%s", cmd);
235
238
Lines 318-327 Link Here
318
		case 'c':
321
		case 'c':
319
		case 'i':
322
		case 'i':
320
		case 'F':
323
		case 'F':
321
			addargs(&args, "-%c%s", ch, optarg);
324
			addargs(&args, "-%c", ch);
325
			addargs(&args, "%s", optarg);
322
			break;
326
			break;
323
		case 'P':
327
		case 'P':
324
			addargs(&args, "-p%s", optarg);
328
			addargs(&args, "-p");
329
			addargs(&args, "%s", optarg);
325
			break;
330
			break;
326
		case 'B':
331
		case 'B':
327
			addargs(&args, "-oBatchmode yes");
332
			addargs(&args, "-oBatchmode yes");
Lines 526-531 Link Here
526
			} else {
531
			} else {
527
				host = cleanhostname(argv[i]);
532
				host = cleanhostname(argv[i]);
528
			}
533
			}
534
			addargs(&alist, "--");
529
			addargs(&alist, "%s", host);
535
			addargs(&alist, "%s", host);
530
			addargs(&alist, "%s", cmd);
536
			addargs(&alist, "%s", cmd);
531
			addargs(&alist, "%s", src);
537
			addargs(&alist, "%s", src);
Lines 536-542 Link Here
536
				errs = 1;
542
				errs = 1;
537
		} else {	/* local to remote */
543
		} else {	/* local to remote */
538
			if (remin == -1) {
544
			if (remin == -1) {
539
				xasprintf(&bp, "%s -t %s", cmd, targ);
545
				xasprintf(&bp, "%s -t -- %s", cmd, targ);
540
				host = cleanhostname(thost);
546
				host = cleanhostname(thost);
541
				if (do_cmd(host, tuser, bp, &remin,
547
				if (do_cmd(host, tuser, bp, &remin,
542
				    &remout) < 0)
548
				    &remout) < 0)
Lines 569-574 Link Here
569
				addargs(&alist, "-r");
575
				addargs(&alist, "-r");
570
			if (pflag)
576
			if (pflag)
571
				addargs(&alist, "-p");
577
				addargs(&alist, "-p");
578
			addargs(&alist, "--");
572
			addargs(&alist, "%s", argv[i]);
579
			addargs(&alist, "%s", argv[i]);
573
			addargs(&alist, "%s", argv[argc-1]);
580
			addargs(&alist, "%s", argv[argc-1]);
574
			if (do_local_cmd(&alist))
581
			if (do_local_cmd(&alist))
Lines 588-594 Link Here
588
				suser = pwd->pw_name;
595
				suser = pwd->pw_name;
589
		}
596
		}
590
		host = cleanhostname(host);
597
		host = cleanhostname(host);
591
		xasprintf(&bp, "%s -f %s", cmd, src);
598
		xasprintf(&bp, "%s -f -- %s", cmd, src);
592
		if (do_cmd(host, suser, bp, &remin, &remout) < 0) {
599
		if (do_cmd(host, suser, bp, &remin, &remout) < 0) {
593
			(void) xfree(bp);
600
			(void) xfree(bp);
594
			++errs;
601
			++errs;
(-)src/usr.bin/ssh/sftp.c:1.114 (-2 / +4 lines)
Lines 1-4 Link Here
1
/* $OpenBSD: sftp.c,v 1.114 2009/12/06 23:53:54 dtucker Exp $ */
1
/* $OpenBSD: sftp.c,v 1.115 2009/12/20 07:28:36 guenther Exp $ */
2
/*
2
/*
3
 * Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org>
3
 * Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org>
4
 *
4
 *
Lines 1760-1766 Link Here
1760
				fprintf(stderr, "Missing username\n");
1760
				fprintf(stderr, "Missing username\n");
1761
				usage();
1761
				usage();
1762
			}
1762
			}
1763
			addargs(&args, "-l%s", userhost);
1763
			addargs(&args, "-l");
1764
			addargs(&args, "%s", userhost);
1764
		}
1765
		}
1765
1766
1766
		if ((cp = colon(host)) != NULL) {
1767
		if ((cp = colon(host)) != NULL) {
Lines 1780-1785 Link Here
1780
		if (sftp_server == NULL || strchr(sftp_server, '/') == NULL)
1781
		if (sftp_server == NULL || strchr(sftp_server, '/') == NULL)
1781
			addargs(&args, "-s");
1782
			addargs(&args, "-s");
1782
1783
1784
		addargs(&args, "--");
1783
		addargs(&args, "%s", host);
1785
		addargs(&args, "%s", host);
1784
		addargs(&args, "%s", (sftp_server != NULL ?
1786
		addargs(&args, "%s", (sftp_server != NULL ?
1785
		    sftp_server : "sftp"));
1787
		    sftp_server : "sftp"));
(-)src/usr.bin/ssh/ssh.c:1.328 (-2 / +2 lines)
Lines 1-4 Link Here
1
/* $OpenBSD: ssh.c,v 1.328 2009/10/28 16:38:18 reyk Exp $ */
1
/* $OpenBSD: ssh.c,v 1.329 2009/12/20 07:28:36 guenther Exp $ */
2
/*
2
/*
3
 * Author: Tatu Ylonen <ylo@cs.hut.fi>
3
 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4
 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
4
 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
Lines 515-521 Link Here
515
	ac -= optind;
515
	ac -= optind;
516
	av += optind;
516
	av += optind;
517
517
518
	if (ac > 0 && !host && **av != '-') {
518
	if (ac > 0 && !host) {
519
		if (strrchr(*av, '@')) {
519
		if (strrchr(*av, '@')) {
520
			p = xstrdup(*av);
520
			p = xstrdup(*av);
521
			cp = strrchr(p, '@');
521
			cp = strrchr(p, '@');

Return to bug 1814