using System.Collections.Generic; using Renci.SshNet.Common; namespace Renci.SshNet.Channels { /// /// Session SSH channel. /// internal interface IChannelSession : IChannel { /// /// Opens the channel. /// void Open(); /// /// Sends the pseudo terminal request. /// /// The environment variable. /// The columns. /// The rows. /// The width. /// The height. /// The terminal mode values. /// /// true if request was successful; otherwise false. /// bool SendPseudoTerminalRequest(string environmentVariable, uint columns, uint rows, uint width, uint height, IDictionary terminalModeValues); /// /// Sends the X11 forwarding request. /// /// if set to true the it is single connection. /// The protocol. /// The cookie. /// The screen number. /// /// true if request was successful; otherwise false. /// bool SendX11ForwardingRequest(bool isSingleConnection, string protocol, byte[] cookie, uint screenNumber); /// /// Sends the environment variable request. /// /// Name of the variable. /// The variable value. /// /// true if request was successful; otherwise false. /// bool SendEnvironmentVariableRequest(string variableName, string variableValue); /// /// Sends the shell request. /// /// /// true if request was successful; otherwise false. /// bool SendShellRequest(); /// /// Sends the exec request. /// /// The command. /// /// true if request was successful; otherwise false. /// bool SendExecRequest(string command); /// /// Sends the exec request. /// /// Length of the break. /// /// true if request was successful; otherwise false. /// bool SendBreakRequest(uint breakLength); /// /// Sends the subsystem request. /// /// The subsystem. /// /// true if request was successful; otherwise false. /// bool SendSubsystemRequest(string subsystem); /// /// Sends the window change request. /// /// The columns. /// The rows. /// The width. /// The height. /// /// true if request was successful; otherwise false. /// bool SendWindowChangeRequest(uint columns, uint rows, uint width, uint height); /// /// Sends the local flow request. /// /// if set to true [client can do]. /// /// true if request was successful; otherwise false. /// bool SendLocalFlowRequest(bool clientCanDo); /// /// Sends the signal request. /// /// Name of the signal. /// /// true if request was successful; otherwise false. /// bool SendSignalRequest(string signalName); /// /// Sends the exit status request. /// /// The exit status. /// /// true if request was successful; otherwise false. /// bool SendExitStatusRequest(uint exitStatus); /// /// Sends the exit signal request. /// /// Name of the signal. /// if set to true [core dumped]. /// The error message. /// The language. /// /// true if request was successful; otherwise false. /// bool SendExitSignalRequest(string signalName, bool coreDumped, string errorMessage, string language); /// /// Sends eow@openssh.com request. /// /// /// true if request was successful; otherwise false. /// bool SendEndOfWriteRequest(); /// /// Sends keepalive@openssh.com request. /// /// /// true if request was successful; otherwise false. /// bool SendKeepAliveRequest(); } }