From 3dae15c6111a90a4a7417a34fa47a1cfee16963e Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Sun, 3 Apr 2005 10:16:11 +1000 Subject: - deraadt@cvs.openbsd.org 2005/03/31 18:39:21 [scp.c] copy argv[] element instead of smashing the one that ps will see; ok otto --- ChangeLog | 8 +++++++- scp.c | 13 ++++++++----- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9fedb7fa5..e6c2db199 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +20050403 + - (djm) OpenBSD CVS Sync + - deraadt@cvs.openbsd.org 2005/03/31 18:39:21 + [scp.c] + copy argv[] element instead of smashing the one that ps will see; ok otto + 20050331 - (dtucker) OpenBSD CVS Sync - jmc@cvs.openbsd.org 2005/03/16 11:10:38 @@ -2408,4 +2414,4 @@ - (djm) Trim deprecated options from INSTALL. Mention UsePAM - (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu -$Id: ChangeLog,v 1.3734 2005/03/31 13:52:04 dtucker Exp $ +$Id: ChangeLog,v 1.3735 2005/04/03 00:16:11 djm Exp $ diff --git a/scp.c b/scp.c index f69fd05fc..dcea1946b 100644 --- a/scp.c +++ b/scp.c @@ -71,7 +71,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: scp.c,v 1.119 2005/01/24 10:22:06 dtucker Exp $"); +RCSID("$OpenBSD: scp.c,v 1.120 2005/03/31 18:39:21 deraadt Exp $"); #include "xmalloc.h" #include "atomicio.h" @@ -361,20 +361,23 @@ void toremote(char *targ, int argc, char **argv) { int i, len; - char *bp, *host, *src, *suser, *thost, *tuser; + char *bp, *host, *src, *suser, *thost, *tuser, *arg; *targ++ = 0; if (*targ == 0) targ = "."; - if ((thost = strrchr(argv[argc - 1], '@'))) { + arg = strdup(argv[argc - 1]); + if (!arg) + err(1, "malloc"); + if ((thost = strrchr(arg, '@'))) { /* user@host */ *thost++ = 0; - tuser = argv[argc - 1]; + tuser = arg; if (*tuser == '\0') tuser = NULL; } else { - thost = argv[argc - 1]; + thost = arg; tuser = NULL; } -- cgit v1.2.3