C# Класс Granados.SSH2.SSH2ChannelBase

SSH2 channel base class.
Наследование: ISSHChannel
Показать файл Открыть проект

Открытые методы

Метод Описание
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 ( SSH2PacketType 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.

SSH2ChannelBase ( IPacketSender packetSender, SSHConnectionParameter param, SSHProtocolEventManager protocolEventManager, uint localChannel, ChannelType channelType, string channelTypeString ) : System

Constructor (initiated by client)

SSH2ChannelBase ( IPacketSender packetSender, SSHConnectionParameter param, SSHProtocolEventManager protocolEventManager, uint localChannel, uint remoteChannel, ChannelType channelType, string channelTypeString, uint serverWindowSize, uint serverMaxPacketSize ) : System

Constructor (initiated by server)

Send ( Granados.IO.DataFragment data ) : void

Send data.

SendBreak ( int breakLength ) : bool

Send Break. (SSH2, session channel only)

SendEOF ( ) : void

Send EOF.

SendOpen ( ) : void

Sends SSH_MSG_CHANNEL_OPEN

SendOpenConfirmation ( ) : void

Sends SSH_MSG_CHANNEL_OPEN_CONFIRMATION

SetHandler ( ISSHChannelEventHandler handler ) : void

Sets handler

WaitReady ( ) : bool

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

Защищенные методы

Метод Описание
BuildOpenPacket ( ) : SSH2Packet

Builds SSH_MSG_CHANNEL_OPEN packet

Die ( ) : void

Notifies terminating this channel.

OnChannelEstablished ( ) : void

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

ProcessPacketSub ( SSH2PacketType 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.

SendRequest ( SSH2Packet requestPacket ) : void

Sends SSH_MSG_CHANNEL_REQUEST packet (no response)

SendRequestAndWaitResponseAsync ( SSH2Packet requestPacket ) : Task

Sends SSH_MSG_CHANNEL_REQUEST packet and wait response asynchronously.

SetStateReady ( ) : void

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

Trace ( string format ) : void

Outputs Trace message.

Transmit ( int consumedSize, SSH2Packet packet ) : void

Sends a packet.

Приватные методы

Метод Описание
AdjustWindowSize ( int dataLength ) : void

Adjust window size.

SetStateClosed ( bool byServer ) : void

Set state to "Closed".

WaitResponseAsync ( ) : Task

Описание методов

BuildOpenPacket() защищенный Метод

Builds SSH_MSG_CHANNEL_OPEN packet
protected BuildOpenPacket ( ) : SSH2Packet
Результат SSH2Packet

Close() публичный Метод

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
Результат void

Die() защищенный Метод

Notifies terminating this channel.
protected Die ( ) : void
Результат void

OnChannelEstablished() защищенный Метод

Do additional work when State was changed to State.Established.
protected OnChannelEstablished ( ) : void
Результат void

ProcessPacket() публичный Метод

Process packet about this channel.
public ProcessPacket ( SSH2PacketType packetType, Granados.IO.DataFragment packetFragment ) : void
packetType SSH2PacketType a packet type (message number)
packetFragment Granados.IO.DataFragment a packet image except message number and recipient channel.
Результат void

ProcessPacketSub() защищенный Метод

Process packet additionally.
This method will be called repeatedly while State is State.Established or State.Ready.
protected ProcessPacketSub ( SSH2PacketType packetType, Granados.IO.DataFragment packetFragment ) : SubPacketProcessResult
packetType SSH2PacketType a packet type (message number)
packetFragment Granados.IO.DataFragment a packet image except message number and recipient channel.
Результат SubPacketProcessResult

RequestFailed() защищенный Метод

The derived class can change state from "Established" to "Closing" by calling this method.
protected RequestFailed ( ) : void
Результат void

ResizeTerminal() публичный Метод

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
Результат void

SSH2ChannelBase() публичный Метод

Constructor (initiated by client)
public SSH2ChannelBase ( IPacketSender packetSender, SSHConnectionParameter param, SSHProtocolEventManager protocolEventManager, uint localChannel, ChannelType channelType, string channelTypeString ) : System
packetSender IPacketSender
param SSHConnectionParameter
protocolEventManager SSHProtocolEventManager
localChannel uint
channelType ChannelType
channelTypeString string
Результат System

SSH2ChannelBase() публичный Метод

Constructor (initiated by server)
public SSH2ChannelBase ( IPacketSender packetSender, SSHConnectionParameter param, SSHProtocolEventManager protocolEventManager, uint localChannel, uint remoteChannel, ChannelType channelType, string channelTypeString, uint serverWindowSize, uint serverMaxPacketSize ) : System
packetSender IPacketSender
param SSHConnectionParameter
protocolEventManager SSHProtocolEventManager
localChannel uint
remoteChannel uint
channelType ChannelType
channelTypeString string
serverWindowSize uint
serverMaxPacketSize uint
Результат System

Send() публичный Метод

Send data.
the channel is already closed.
public Send ( Granados.IO.DataFragment data ) : void
data Granados.IO.DataFragment data to send
Результат void

SendBreak() публичный Метод

Send Break. (SSH2, session channel only)
the channel is already closed.
public SendBreak ( int breakLength ) : bool
breakLength int break-length in milliseconds
Результат bool

SendEOF() публичный Метод

Send EOF.
the channel is already closed.
public SendEOF ( ) : void
Результат void

SendOpen() публичный Метод

Sends SSH_MSG_CHANNEL_OPEN
public SendOpen ( ) : void
Результат void

SendOpenConfirmation() публичный Метод

Sends SSH_MSG_CHANNEL_OPEN_CONFIRMATION
inappropriate channel state
public SendOpenConfirmation ( ) : void
Результат void

SendRequest() защищенный Метод

Sends SSH_MSG_CHANNEL_REQUEST packet (no response)
protected SendRequest ( SSH2Packet requestPacket ) : void
requestPacket SSH2Packet SSH_MSG_CHANNEL_REQUEST packet
Результат void

SendRequestAndWaitResponseAsync() защищенный Метод

Sends SSH_MSG_CHANNEL_REQUEST packet and wait response asynchronously.
protected SendRequestAndWaitResponseAsync ( SSH2Packet requestPacket ) : Task
requestPacket SSH2Packet SSH_MSG_CHANNEL_REQUEST packet
Результат Task

SetHandler() публичный Метод

Sets handler
public SetHandler ( ISSHChannelEventHandler handler ) : void
handler ISSHChannelEventHandler
Результат void

SetStateReady() защищенный Метод

The derived class can change state from "Established" to "Ready" by calling this method.
protected SetStateReady ( ) : void
Результат void

Trace() защищенный Метод

Outputs Trace message.
protected Trace ( string format ) : void
format string format string
Результат void

Transmit() защищенный Метод

Sends a packet.
protected Transmit ( int consumedSize, SSH2Packet packet ) : void
consumedSize int consumed window size.
packet SSH2Packet packet object
Результат void

WaitReady() публичный Метод

Block execution of the current thread until the channel is ready for the communication.
public WaitReady ( ) : bool
Результат bool