summaryrefslogtreecommitdiff
path: root/clientloop.h
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2008-06-13 04:49:33 +1000
committerDarren Tucker <dtucker@zip.com.au>2008-06-13 04:49:33 +1000
commit2fb66caca2c9e69c6a0584060114fcd52e59d5ff (patch)
treede895acfd51886da7e4ca547baea0b45e954c72e /clientloop.h
parent267e28bb75e97755ab3bbe128b75623734f2b3fd (diff)
downloadopenssh-git-2fb66caca2c9e69c6a0584060114fcd52e59d5ff.tar.gz
- djm@cvs.openbsd.org 2008/06/12 03:40:52
[clientloop.h mux.c channels.c clientloop.c channels.h] Enable ~ escapes for multiplex slave sessions; give each channel its own escape state and hook the escape filters up to muxed channels. bz #1331 Mux slaves do not currently support the ~^Z and ~& escapes. NB. this change cranks the mux protocol version, so a new ssh mux client will not be able to connect to a running old ssh mux master. ok dtucker@
Diffstat (limited to 'clientloop.h')
-rw-r--r--clientloop.h22
1 files changed, 6 insertions, 16 deletions
diff --git a/clientloop.h b/clientloop.h
index 6f8e7012..cecbfb1a 100644
--- a/clientloop.h
+++ b/clientloop.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: clientloop.h,v 1.19 2008/05/09 14:18:44 djm Exp $ */
+/* $OpenBSD: clientloop.h,v 1.20 2008/06/12 03:40:52 djm Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
@@ -46,8 +46,12 @@ void client_session2_setup(int, int, int, const char *, struct termios *,
int, Buffer *, char **);
int client_request_tun_fwd(int, int, int);
+/* Escape filter for protocol 2 sessions */
+void *client_new_escape_filter_ctx(int);
+int client_simple_escape_filter(Channel *, char *, int);
+
/* Multiplexing protocol version */
-#define SSHMUX_VER 1
+#define SSHMUX_VER 2
/* Multiplexing control protocol flags */
#define SSHMUX_COMMAND_OPEN 1 /* Open new connection */
@@ -59,20 +63,6 @@ int client_request_tun_fwd(int, int, int);
#define SSHMUX_FLAG_X11_FWD (1<<2) /* Request X11 forwarding */
#define SSHMUX_FLAG_AGENT_FWD (1<<3) /* Request agent forwarding */
-/* Multiplexing routines */
-
-struct mux_session_confirm_ctx {
- int want_tty;
- int want_subsys;
- int want_x_fwd;
- int want_agent_fwd;
- Buffer cmd;
- char *term;
- struct termios tio;
- char **env;
-};
-
-/* mux.c */
void muxserver_listen(void);
int muxserver_accept_control(void);
void muxclient(const char *);