Package com.trilead.ssh2.channel
Class ChannelManager
java.lang.Object
com.trilead.ssh2.channel.ChannelManager
- All Implemented Interfaces:
MessageHandler
ChannelManager. Please read the comments in Channel.java.
Besides the crypto part, this is the core of the library.
- Version:
- $Id: ChannelManager.java,v 1.2 2008/03/03 07:01:36 cplattne Exp $
- Author:
- Christian Plattner, plattner@trilead.com
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncheckX11Cookie(String hexFakeCookie) voidvoidcloseChannel(Channel c, String reason, boolean force) intgetAvailable(Channel c, boolean extended) intgetChannelData(Channel c, boolean extended, byte[] target, int off, int len) voidhandleEndMessage(Throwable cause) Called to inform that no more messages will be delivered.voidhandleMessage(byte[] msg, int msglen) Handle message.voidmsgChannelClose(byte[] msg, int msglen) voidmsgChannelData(byte[] msg, int msglen) voidmsgChannelEOF(byte[] msg, int msglen) voidmsgChannelExtendedData(byte[] msg, int msglen) voidmsgChannelFailure(byte[] msg, int msglen) voidmsgChannelOpen(byte[] msg, int msglen) voidmsgChannelOpenConfirmation(byte[] msg, int msglen) voidmsgChannelOpenFailure(byte[] msg, int msglen) voidmsgChannelRequest(byte[] msg, int msglen) voidmsgChannelSuccess(byte[] msg, int msglen) voidmsgChannelWindowAdjust(byte[] msg, int msglen) voidvoidmsgGlobalRequest(byte[] msg, int msglen) voidopenDirectTCPIPChannel(String host_to_connect, int port_to_connect, String originator_IP_address, int originator_port) voidregisterThread(com.trilead.ssh2.channel.IChannelWorkerThread thr) voidregisterX11Cookie(String hexFakeCookie, X11ServerData data) voidrequestCancelGlobalForward(int bindPort) voidvoidrequestExecCommand(Channel c, String cmd) intrequestGlobalForward(String bindAddress, int bindPort, String targetAddress, int targetPort) voidvoidrequestPTY(Channel c, String term, int term_width_characters, int term_height_characters, int term_width_pixels, int term_height_pixels, byte[] terminal_modes) voidvoidrequestSubSystem(Channel c, String subSystemName) voidrequestX11(Channel c, boolean singleConnection, String x11AuthenticationProtocol, String x11AuthenticationCookie, int x11ScreenNumber) voidvoidvoidvoidunRegisterX11Cookie(String hexFakeCookie, boolean killChannels) intwaitForCondition(Channel c, long timeout, int condition_mask) Wait until for a condition.
-
Constructor Details
-
ChannelManager
-
-
Method Details
-
registerX11Cookie
-
unRegisterX11Cookie
-
checkX11Cookie
-
closeAllChannels
public void closeAllChannels() -
closeChannel
- Throws:
IOException
-
sendEOF
- Throws:
IOException
-
sendOpenConfirmation
- Throws:
IOException
-
sendData
- Throws:
IOException
-
requestGlobalForward
public int requestGlobalForward(String bindAddress, int bindPort, String targetAddress, int targetPort) throws IOException - Throws:
IOException
-
requestCancelGlobalForward
- Throws:
IOException
-
registerThread
- Throws:
IOException
-
openDirectTCPIPChannel
public Channel openDirectTCPIPChannel(String host_to_connect, int port_to_connect, String originator_IP_address, int originator_port) throws IOException - Throws:
IOException
-
openSessionChannel
- Throws:
IOException
-
requestGlobalTrileadPing
- Throws:
IOException
-
requestChannelTrileadPing
- Throws:
IOException
-
requestPTY
public void requestPTY(Channel c, String term, int term_width_characters, int term_height_characters, int term_width_pixels, int term_height_pixels, byte[] terminal_modes) throws IOException - Throws:
IOException
-
requestX11
public void requestX11(Channel c, boolean singleConnection, String x11AuthenticationProtocol, String x11AuthenticationCookie, int x11ScreenNumber) throws IOException - Throws:
IOException
-
requestSubSystem
- Throws:
IOException
-
requestExecCommand
- Throws:
IOException
-
requestShell
- Throws:
IOException
-
msgChannelExtendedData
- Throws:
IOException
-
waitForCondition
public int waitForCondition(Channel c, long timeout, int condition_mask) throws InterruptedException Wait until for a condition.- Parameters:
c- Channeltimeout- in ms, 0 means no timeout.condition_mask- minimum event mask- Returns:
- all current events
- Throws:
InterruptedException- the interrupted exception
-
getAvailable
- Throws:
IOException
-
getChannelData
public int getChannelData(Channel c, boolean extended, byte[] target, int off, int len) throws IOException - Throws:
IOException
-
msgChannelData
- Throws:
IOException
-
msgChannelWindowAdjust
- Throws:
IOException
-
msgChannelOpen
- Throws:
IOException
-
msgChannelRequest
- Throws:
IOException
-
msgChannelEOF
- Throws:
IOException
-
msgChannelClose
- Throws:
IOException
-
msgChannelSuccess
- Throws:
IOException
-
msgChannelFailure
- Throws:
IOException
-
msgChannelOpenConfirmation
- Throws:
IOException
-
msgChannelOpenFailure
- Throws:
IOException
-
msgGlobalRequest
- Throws:
IOException
-
msgGlobalSuccess
- Throws:
IOException
-
msgGlobalFailure
- Throws:
IOException
-
handleMessage
Description copied from interface:MessageHandlerHandle message.- Specified by:
handleMessagein interfaceMessageHandler- Parameters:
msg- the msgmsglen- the msglen- Throws:
IOException- the io exception
-
handleEndMessage
Description copied from interface:MessageHandlerCalled to inform that no more messages will be delivered.- Specified by:
handleEndMessagein interfaceMessageHandler- Parameters:
cause- For diagnosis, the reason that caused the transport to close down.- Throws:
IOException- the io exception
-