openssh PTY allocation

Morty Abzug morty at frakir.org
Fri Jul 29 01:52:47 EST 2011


On Wed, Jul 27, 2011 at 05:25:05PM +1000, Damien Miller wrote:

> The problem is a bug in ScreenOS, it refuses pty-req channel requests
> when the tty modes blob exceeds 256 bytes in length. If you want a
> workaround that preserves the usability of the tty, then comment out
> a couple of less-important modes in ttymodes.h and recompile

Any suggestions on which modes are less important?

I already came up with a different workaround.  Here is the TTY
portion of the approach:

diff -ur openssh-5.8p2-orig//clientloop.c openssh-5.8p2-morty/clientloop.c
--- openssh-5.8p2-orig//clientloop.c    Sun Jan 16 12:18:35 2011
+++ openssh-5.8p2-morty/clientloop.c   Tue Jul 26 16:55:17 2011
@@ -1982,7 +1982,7 @@
                        memset(&ws, 0, sizeof(ws));

                channel_request_start(id, "pty-req", 1);
-               client_expect_confirm(id, "PTY allocation", 1);
+               client_expect_confirm(id, "PTY allocation", 0);
                packet_put_cstring(term != NULL ? term : "");
                packet_put_int((u_int)ws.ws_col);
                packet_put_int((u_int)ws.ws_row);

Which approach is better?  I'd be happy to submit a patch that adds an
option to implement the preferred approach.

- Morty


More information about the openssh-unix-dev mailing list