summaryrefslogtreecommitdiff
path: root/usr.bin/ssh/sshconnect.c
diff options
context:
space:
mode:
authorMarkus Friedl <markus@cvs.openbsd.org>2013-02-22 19:13:57 +0000
committerMarkus Friedl <markus@cvs.openbsd.org>2013-02-22 19:13:57 +0000
commitf7675fd4d37c0dd84ad4bbe9c28a93ab10611a6d (patch)
treeb795b88e5b35c1f3f324f30d88c696ad2b88e3f9 /usr.bin/ssh/sshconnect.c
parentcf005af52eb81a65e78196c4f59e9e9741f973f6 (diff)
support ProxyCommand=- (stdin/out already point to the proxy); ok djm@
Diffstat (limited to 'usr.bin/ssh/sshconnect.c')
-rw-r--r--usr.bin/ssh/sshconnect.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/usr.bin/ssh/sshconnect.c b/usr.bin/ssh/sshconnect.c
index 79a7e305313..f377cfa3b7f 100644
--- a/usr.bin/ssh/sshconnect.c
+++ b/usr.bin/ssh/sshconnect.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sshconnect.c,v 1.236 2012/09/14 16:51:34 markus Exp $ */
+/* $OpenBSD: sshconnect.c,v 1.237 2013/02/22 19:13:56 markus Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -79,6 +79,13 @@ ssh_proxy_connect(const char *host, u_short port, const char *proxy_command)
pid_t pid;
char *shell, strport[NI_MAXSERV];
+ if (!strcmp(proxy_command, "-")) {
+ packet_set_connection(STDIN_FILENO, STDOUT_FILENO);
+ packet_set_timeout(options.server_alive_interval,
+ options.server_alive_count_max);
+ return 0;
+ }
+
if ((shell = getenv("SHELL")) == NULL || *shell == '\0')
shell = _PATH_BSHELL;