[scp.c]
     copy argv[] element instead of smashing the one that ps will see; ok otto
This commit is contained in:
Damien Miller 2005-04-03 10:16:11 +10:00
parent de0de39082
commit 3dae15c611
2 changed files with 15 additions and 6 deletions

View File

@ -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 $

13
scp.c
View File

@ -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;
}