C# Class Granados.SSH1.SSH1SubChannelBase

SSH1 channel base class.
Inheritance: SSH1ChannelBase
Show file Open project: poderosaproject/poderosa

Public Methods

Method Description
Close ( ) : void

Close this channel.

After calling this method, all mothods of the ISSHChannel will throw SSHChannelInvalidOperationException.If this method was called under the inappropriate channel state, the method call will be ignored silently.

ProcessPacket ( SSH1PacketType packetType, Granados.IO.DataFragment packetFragment ) : void

Process packet about this channel.

ResizeTerminal ( uint width, uint height, uint pixelWidth, uint pixelHeight ) : void

Send window dimension change message.

SSH1SubChannelBase ( IPacketSender packetSender, SSHProtocolEventManager protocolEventManager, uint localChannel, ChannelType channelType, string channelTypeString ) : System

Constructor (initiated by client)

SSH1SubChannelBase ( IPacketSender packetSender, SSHProtocolEventManager protocolEventManager, uint localChannel, uint remoteChannel, ChannelType channelType, string channelTypeString ) : System

Constructor (initiated by server)

Send ( Granados.IO.DataFragment data ) : void

Send data.

SendEOF ( ) : void

Send EOF.

SendOpen ( ) : void

Sends SSH_MSG_CHANNEL_OPEN

SendOpenConfirmation ( ) : void

Sends SSH_MSG_CHANNEL_OPEN_CONFIRMATION

WaitReady ( ) : bool

Block execution of the current thread until the channel is ready for the communication.

Protected Methods

Method Description
BuildOpenPacket ( ) : Tuple

Builds SSH_MSG_CHANNEL_OPEN packet

OnChannelEstablished ( ) : void

Do additional work when State was changed to State.Established.

ProcessPacketSub ( SSH1PacketType packetType, Granados.IO.DataFragment packetFragment ) : SubPacketProcessResult

Process packet additionally.

This method will be called repeatedly while State is State.Established or State.Ready.

RequestFailed ( ) : void

The derived class can change state from "Established" to "Closing" by calling this method.

SetStateReady ( ) : void

The derived class can change state from "Established" to "Ready" by calling this method.

Private Methods

Method Description
SetStateClosed ( bool byServer ) : void

Set state to "Closed".

Method Details

BuildOpenPacket() protected abstract method

Builds SSH_MSG_CHANNEL_OPEN packet
protected abstract BuildOpenPacket ( ) : Tuple
return Tuple

Close() public method

Close this channel.
After calling this method, all mothods of the ISSHChannel will throw SSHChannelInvalidOperationException. If this method was called under the inappropriate channel state, the method call will be ignored silently.
public Close ( ) : void
return void

OnChannelEstablished() protected method

Do additional work when State was changed to State.Established.
protected OnChannelEstablished ( ) : void
return void

ProcessPacket() public method

Process packet about this channel.
public ProcessPacket ( SSH1PacketType packetType, Granados.IO.DataFragment packetFragment ) : void
packetType SSH1PacketType a packet type (message number)
packetFragment Granados.IO.DataFragment a packet image except message number and recipient channel.
return void

ProcessPacketSub() protected method

Process packet additionally.
This method will be called repeatedly while State is State.Established or State.Ready.
protected ProcessPacketSub ( SSH1PacketType packetType, Granados.IO.DataFragment packetFragment ) : SubPacketProcessResult
packetType SSH1PacketType a packet type (message number)
packetFragment Granados.IO.DataFragment a packet image except message number and recipient channel.
return SubPacketProcessResult

RequestFailed() protected method

The derived class can change state from "Established" to "Closing" by calling this method.
protected RequestFailed ( ) : void
return void

ResizeTerminal() public method

Send window dimension change message.
the channel is already closed.
public ResizeTerminal ( uint width, uint height, uint pixelWidth, uint pixelHeight ) : void
width uint terminal width, columns
height uint terminal height, rows
pixelWidth uint terminal width, pixels
pixelHeight uint terminal height, pixels
return void

SSH1SubChannelBase() public method

Constructor (initiated by client)
public SSH1SubChannelBase ( IPacketSender packetSender, SSHProtocolEventManager protocolEventManager, uint localChannel, ChannelType channelType, string channelTypeString ) : System
packetSender IPacketSender
protocolEventManager SSHProtocolEventManager
localChannel uint
channelType ChannelType
channelTypeString string
return System

SSH1SubChannelBase() public method

Constructor (initiated by server)
public SSH1SubChannelBase ( IPacketSender packetSender, SSHProtocolEventManager protocolEventManager, uint localChannel, uint remoteChannel, ChannelType channelType, string channelTypeString ) : System
packetSender IPacketSender
protocolEventManager SSHProtocolEventManager
localChannel uint
remoteChannel uint
channelType ChannelType
channelTypeString string
return System

Send() public method

Send data.
the channel is already closed.
public Send ( Granados.IO.DataFragment data ) : void
data Granados.IO.DataFragment data to send
return void

SendEOF() public method

Send EOF.
the channel is already closed.
public SendEOF ( ) : void
return void

SendOpen() public method

Sends SSH_MSG_CHANNEL_OPEN
public SendOpen ( ) : void
return void

SendOpenConfirmation() public method

Sends SSH_MSG_CHANNEL_OPEN_CONFIRMATION
inappropriate channel state
public SendOpenConfirmation ( ) : void
return void

SetStateReady() protected method

The derived class can change state from "Established" to "Ready" by calling this method.
protected SetStateReady ( ) : void
return void

WaitReady() public method

Block execution of the current thread until the channel is ready for the communication.
public WaitReady ( ) : bool
return bool