version 1.83, 2001/09/17 17:57:56 |
version 1.84, 2001/09/19 19:24:19 |
|
|
addargs(&args, "-x"); |
addargs(&args, "-x"); |
addargs(&args, "-oForwardAgent no"); |
addargs(&args, "-oForwardAgent no"); |
addargs(&args, "-oFallBackToRsh no"); |
addargs(&args, "-oFallBackToRsh no"); |
|
addargs(&args, "-oClearAllForwardings yes"); |
|
|
fflag = tflag = 0; |
fflag = tflag = 0; |
while ((ch = getopt(argc, argv, "dfprtvBCc:i:P:q46S:o:F:")) != -1) |
while ((ch = getopt(argc, argv, "dfprtvBCc:i:P:q46S:o:F:")) != -1) |
|
|
for (i = 0; i < argc - 1; i++) { |
for (i = 0; i < argc - 1; i++) { |
src = colon(argv[i]); |
src = colon(argv[i]); |
if (src) { /* remote to remote */ |
if (src) { /* remote to remote */ |
|
static char *ssh_options = |
|
"-x -o'FallBackToRsh no' " |
|
"-o'ClearAllForwardings yes'"; |
*src++ = 0; |
*src++ = 0; |
if (*src == 0) |
if (*src == 0) |
src = "."; |
src = "."; |
host = strchr(argv[i], '@'); |
host = strchr(argv[i], '@'); |
len = strlen(ssh_program) + strlen(argv[i]) + |
len = strlen(ssh_program) + strlen(argv[i]) + |
strlen(src) + (tuser ? strlen(tuser) : 0) + |
strlen(src) + (tuser ? strlen(tuser) : 0) + |
strlen(thost) + strlen(targ) + CMDNEEDS + 32; |
strlen(thost) + strlen(targ) + |
|
strlen(ssh_options) + CMDNEEDS + 20; |
bp = xmalloc(len); |
bp = xmalloc(len); |
if (host) { |
if (host) { |
*host++ = 0; |
*host++ = 0; |
|
|
else if (!okname(suser)) |
else if (!okname(suser)) |
continue; |
continue; |
snprintf(bp, len, |
snprintf(bp, len, |
"%s%s -x -o'FallBackToRsh no' -n " |
"%s%s %s -n " |
"-l %s %s %s %s '%s%s%s:%s'", |
"-l %s %s %s %s '%s%s%s:%s'", |
ssh_program, verbose_mode ? " -v" : "", |
ssh_program, verbose_mode ? " -v" : "", |
suser, host, cmd, src, |
ssh_options, suser, host, cmd, src, |
tuser ? tuser : "", tuser ? "@" : "", |
tuser ? tuser : "", tuser ? "@" : "", |
thost, targ); |
thost, targ); |
} else { |
} else { |
host = cleanhostname(argv[i]); |
host = cleanhostname(argv[i]); |
snprintf(bp, len, |
snprintf(bp, len, |
"exec %s%s -x -o'FallBackToRsh no' -n %s " |
"exec %s%s %s -n %s " |
"%s %s '%s%s%s:%s'", |
"%s %s '%s%s%s:%s'", |
ssh_program, verbose_mode ? " -v" : "", |
ssh_program, verbose_mode ? " -v" : "", |
host, cmd, src, |
ssh_options, host, cmd, src, |
tuser ? tuser : "", tuser ? "@" : "", |
tuser ? tuser : "", tuser ? "@" : "", |
thost, targ); |
thost, targ); |
} |
} |