summaryrefslogtreecommitdiff
path: root/clientloop.c
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2012-09-07 11:21:42 +1000
committerDarren Tucker <dtucker@zip.com.au>2012-09-07 11:21:42 +1000
commitf111d40604846da18b190155b85fa72d58647802 (patch)
treee158a11ce7a9f7426ca2e05a3b3fb756889000df /clientloop.c
parent83d0af69075269769715b00c21d0debe15986bf2 (diff)
- dtucker@cvs.openbsd.org 2012/09/07 00:30:19
[clientloop.c] Print '^Z' instead of a raw ^Z when the sequence is not supported. ok djm@
Diffstat (limited to 'clientloop.c')
-rw-r--r--clientloop.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/clientloop.c b/clientloop.c
index 07d2c8923..20fa4b9f4 100644
--- a/clientloop.c
+++ b/clientloop.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: clientloop.c,v 1.244 2012/09/06 09:50:13 dtucker Exp $ */ 1/* $OpenBSD: clientloop.c,v 1.245 2012/09/07 00:30:19 dtucker Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -1114,11 +1114,16 @@ process_escapes(Channel *c, Buffer *bin, Buffer *bout, Buffer *berr,
1114 case 'Z' - 64: 1114 case 'Z' - 64:
1115 /* XXX support this for mux clients */ 1115 /* XXX support this for mux clients */
1116 if (c && c->ctl_chan != -1) { 1116 if (c && c->ctl_chan != -1) {
1117 char b[16];
1117 noescape: 1118 noescape:
1119 if (ch == 'Z' - 64)
1120 snprintf(b, sizeof b, "^Z");
1121 else
1122 snprintf(b, sizeof b, "%c", ch);
1118 snprintf(string, sizeof string, 1123 snprintf(string, sizeof string,
1119 "%c%c escape not available to " 1124 "%c%s escape not available to "
1120 "multiplexed sessions\r\n", 1125 "multiplexed sessions\r\n",
1121 escape_char, ch); 1126 escape_char, b);
1122 buffer_append(berr, string, 1127 buffer_append(berr, string,
1123 strlen(string)); 1128 strlen(string));
1124 continue; 1129 continue;