Re: [Twisted-Python] Screen clearing in the Manhole

2015-08-26 Thread Peter Westlake
I found it! Manhole.terminalSize, inherited from RecvLine, does self.terminal.eraseDisplay(). t.c.manhole_ssh.TerminalSessionTransport.__init__ calls terminalSize *after* makeConnection. Since setting the terminal size is a sensible thing to do, and it can't be done before the connection is made

Re: [Twisted-Python] Screen clearing in the Manhole

2015-08-26 Thread Peter Westlake
On Tue, 25 Aug 2015, at 23:58, John Santos wrote: ... > t.c.r.R.connectionMade() calls self.initializeScreen(), which in turn > calls self.terminal.reset() > > I'm pretty sure s.t.reset() is actually twisted.conch.insults.reset(), > which has a bug (or an undesirable feature), it sends a "hard re

Re: [Twisted-Python] Screen clearing in the Manhole

2015-08-26 Thread Peter Westlake
On Tue, 25 Aug 2015, at 22:26, Brian Costlow wrote: > As to where it happens, look at > twisted.conch.recvline.RecvLine.connectionMade() and > twisted.conch.insults.insults.TerminalProtocol.makeConnection() My subclass of Manhole first calls Manhole.connectionMade, which calls HistoricRecvLine.co