mirror of git://anongit.mindrot.org/openssh.git
upstream: allow arguments to sftp -D option, e.g. sftp -D
"/usr/libexec/sftp-server -el debug3" ok markus@ OpenBSD-Commit-ID: 5a002b9f3a7aef2731fc0ffa9c921cf15f38ecce
This commit is contained in:
parent
2369a28101
commit
2a822f2930
10
sftp.1
10
sftp.1
|
@ -1,4 +1,4 @@
|
|||
.\" $OpenBSD: sftp.1,v 1.140 2022/03/31 17:27:27 naddy Exp $
|
||||
.\" $OpenBSD: sftp.1,v 1.141 2022/06/27 21:41:55 djm Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 2001 Damien Miller. All rights reserved.
|
||||
.\"
|
||||
|
@ -22,7 +22,7 @@
|
|||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.Dd $Mdocdate: March 31 2022 $
|
||||
.Dd $Mdocdate: June 27 2022 $
|
||||
.Dt SFTP 1
|
||||
.Os
|
||||
.Sh NAME
|
||||
|
@ -34,7 +34,7 @@
|
|||
.Op Fl B Ar buffer_size
|
||||
.Op Fl b Ar batchfile
|
||||
.Op Fl c Ar cipher
|
||||
.Op Fl D Ar sftp_server_path
|
||||
.Op Fl D Ar sftp_server_command
|
||||
.Op Fl F Ar ssh_config
|
||||
.Op Fl i Ar identity_file
|
||||
.Op Fl J Ar destination
|
||||
|
@ -167,10 +167,12 @@ flag).
|
|||
Selects the cipher to use for encrypting the data transfers.
|
||||
This option is directly passed to
|
||||
.Xr ssh 1 .
|
||||
.It Fl D Ar sftp_server_path
|
||||
.It Fl D Ar sftp_server_command
|
||||
Connect directly to a local sftp server
|
||||
(rather than via
|
||||
.Xr ssh 1 ) .
|
||||
A command and arguments may be specified, for example
|
||||
.Qq /path/sftp-server -el debug3 .
|
||||
This option may be useful in debugging the client and server.
|
||||
.It Fl F Ar ssh_config
|
||||
Specifies an alternative
|
||||
|
|
16
sftp.c
16
sftp.c
|
@ -1,4 +1,4 @@
|
|||
/* $OpenBSD: sftp.c,v 1.216 2022/05/13 06:31:50 djm Exp $ */
|
||||
/* $OpenBSD: sftp.c,v 1.217 2022/06/27 21:41:55 djm Exp $ */
|
||||
/*
|
||||
* Copyright (c) 2001-2004 Damien Miller <djm@openbsd.org>
|
||||
*
|
||||
|
@ -2387,8 +2387,8 @@ usage(void)
|
|||
int
|
||||
main(int argc, char **argv)
|
||||
{
|
||||
int in, out, ch, err, tmp, port = -1, noisy = 0;
|
||||
char *host = NULL, *user, *cp, *file2 = NULL;
|
||||
int r, in, out, ch, err, tmp, port = -1, noisy = 0;
|
||||
char *host = NULL, *user, *cp, **cpp, *file2 = NULL;
|
||||
int debug_level = 0;
|
||||
char *file1 = NULL, *sftp_server = NULL;
|
||||
char *ssh_program = _PATH_SSH_PROGRAM, *sftp_direct = NULL;
|
||||
|
@ -2586,10 +2586,12 @@ main(int argc, char **argv)
|
|||
|
||||
connect_to_server(ssh_program, args.list, &in, &out);
|
||||
} else {
|
||||
args.list = NULL;
|
||||
addargs(&args, "sftp-server");
|
||||
|
||||
connect_to_server(sftp_direct, args.list, &in, &out);
|
||||
if ((r = argv_split(sftp_direct, &tmp, &cpp, 1)) != 0)
|
||||
fatal_r(r, "Parse -D arguments");
|
||||
if (cpp[0] == 0)
|
||||
fatal("No sftp server specified via -D");
|
||||
connect_to_server(cpp[0], cpp, &in, &out);
|
||||
argv_free(cpp, tmp);
|
||||
}
|
||||
freeargs(&args);
|
||||
|
||||
|
|
Loading…
Reference in New Issue