twisted.conch.ssh.session.SSHSessionProcessProtocol(protocol.ProcessProtocol)
class documentationtwisted.conch.ssh.session
View Source
(View In Hierarchy)
Implements interfaces: twisted.internet.interfaces.ITransport
I am both an IProcessProtocol
and an ITransport
.
I am a transport to the remote endpoint and a process protocol to the local subsystem.
Method | __init__ | Undocumented |
Method | connectionMade | Called when a connection is made. |
Method | outReceived | Some data was received from stdout. |
Method | errReceived | Some data was received from stderr. |
Method | outConnectionLost | EOF should only be sent when both STDOUT and STDERR have been closed. |
Method | errConnectionLost | See outConnectionLost(). |
Method | connectionLost | Undocumented |
Method | processEnded | When we are told the process ended, try to notify the other side about how the process ended using the exit-signal or exit-status requests. Also, close the channel. |
Method | getHost | Return the host from my session's transport. |
Method | getPeer | Return the peer from my session's transport. |
Method | write | Write some data to the physical connection, in sequence, in a non-blocking fashion. |
Method | writeSequence | Write a list of strings to the physical connection. |
Method | loseConnection | Close my connection, after writing all pending data. |
Method | _getSignalName | Get a signal name given a signal number. |
Inherited from BaseProtocol (via ProcessProtocol):
Method | makeConnection | Make a connection to a transport and a server. |
Inherited from BaseProtocol (via ProcessProtocol):
Method | makeConnection | Make a connection to a transport and a server. |
Called when a connection is made.
This may be considered the initializer of the protocol, because it is called when the connection is completed. For clients, this is called once the connection to the server has been established; for servers, this is called after an accept() call stops blocking and a socket has been received. If you need to send any greeting or initial message, do it here.
EOF should only be sent when both STDOUT and STDERR have been closed.
When we are told the process ended, try to notify the other side about how the process ended using the exit-signal or exit-status requests. Also, close the channel.
Write some data to the physical connection, in sequence, in a non-blocking fashion.
If possible, make sure that it is all written. No data will ever be lost, although (obviously) the connection may be closed before it all gets through.
Write a list of strings to the physical connection.
If possible, make sure that all of the data is written to the socket at once, without first copying it all into a single string.
Close my connection, after writing all pending data.
Note that if there is a registered producer on a transport it will not be closed until the producer has been unregistered.