[sftp.c]
     clean up arg processing. based on work by Christophe_Moret@hp.com
This commit is contained in:
Ben Lindstrom 2001-03-05 07:10:47 +00:00
Родитель 1addabd491
Коммит 46d6e09099
2 изменённых файлов: 14 добавлений и 14 удалений

Просмотреть файл

@ -137,6 +137,9 @@
- deraadt@cvs.openbsd.org 2001/03/03 22:07:50
[sftp-server.c]
KNF
- markus@cvs.openbsd.org 2001/03/03 23:52:22
[sftp.c]
clean up arg processing. based on work by Christophe_Moret@hp.com
20010304
- (bal) Remove make-ssh-known-hosts.1 since it's no longer valid.
@ -4329,4 +4332,4 @@
- Wrote replacements for strlcpy and mkdtemp
- Released 1.0pre1
$Id: ChangeLog,v 1.893 2001/03/05 07:09:11 mouring Exp $
$Id: ChangeLog,v 1.894 2001/03/05 07:10:47 mouring Exp $

23
sftp.c
Просмотреть файл

@ -24,7 +24,7 @@
#include "includes.h"
RCSID("$OpenBSD: sftp.c,v 1.8 2001/02/28 05:36:28 deraadt Exp $");
RCSID("$OpenBSD: sftp.c,v 1.9 2001/03/03 23:52:22 markus Exp $");
/* XXX: commandline mode */
/* XXX: copy between two remote hosts (commandline) */
@ -91,24 +91,14 @@ make_ssh_args(char *add_arg)
static char **args = NULL;
static int nargs = 0;
char debug_buf[4096];
int i, use_subsystem = 1;
/* no subsystem if protocol 1 or the server-spec contains a '/' */
if (use_ssh1 ||
(sftp_server != NULL && strchr(sftp_server, '/') != NULL))
use_subsystem = 0;
int i;
/* Init args array */
if (args == NULL) {
nargs = use_subsystem ? 6 : 5;
nargs = 2;
i = 0;
args = xmalloc(sizeof(*args) * nargs);
args[i++] = "ssh";
args[i++] = use_ssh1 ? "-oProtocol=1" : "-oProtocol=2";
if (use_subsystem)
args[i++] = "-s";
args[i++] = "-oForwardAgent=no";
args[i++] = "-oForwardX11=no";
args[i++] = NULL;
}
@ -121,6 +111,13 @@ make_ssh_args(char *add_arg)
return(NULL);
}
/* no subsystem if the server-spec contains a '/' */
if (sftp_server == NULL || strchr(sftp_server, '/') == NULL)
make_ssh_args("-s");
make_ssh_args("-oForwardX11=no");
make_ssh_args("-oForwardAgent=no");
make_ssh_args(use_ssh1 ? "-oProtocol=1" : "-oProtocol=2");
/* Otherwise finish up and return the arg array */
if (sftp_server != NULL)
make_ssh_args(sftp_server);