[][src]Enum shell_protocol::messages::Message

pub enum Message {
    Exit {
        channel_id: u32,
        code: u32,
        signal: u32,
    },
    Error {
        channel_id: u32,
        message: String,
    },
    Kill {
        channel_id: u32,
        signal: Option<u32>,
    },
    List {
        channel_id: u32,
        process_list: Option<HashMap<u32, (String, u32)>>,
    },
    Pid {
        channel_id: u32,
        pid: u32,
    },
    Spawn {
        channel_id: u32,
        command: String,
        args: Option<Vec<String>>,
    },
    Stdout {
        channel_id: u32,
        data: Option<String>,
    },
    Stderr {
        channel_id: u32,
        data: Option<String>,
    },
    Stdin {
        channel_id: u32,
        data: Option<String>,
    },
}

Messages available in shell protocol

Variants

Exit

This message is sent by the shell service when a process exits

Fields of Exit

channel_id: u32

Channel ID of shell session

code: u32

Exit code

signal: u32

Exit signal

Error

This message is sent when an error occurs within the shell protocol

Fields of Error

channel_id: u32

Channel ID of shell session

message: String

Error condition encountered

Kill

This message is sent to the shell service to send a kill signal to the child process

Fields of Kill

channel_id: u32

Channel ID of shell session

signal: Option<u32>

Optional signal to use. Default is SIGKILL

List

This message is used to request and respond with the lists of processes currently running under the shell service.

Fields of List

channel_id: u32

Channel ID of shell session

process_list: Option<HashMap<u32, (String, u32)>>

Optional list of processes. No list is sent when a request is sent.

Pid

This message is sent by the shell service after a process is spawned to indicate the process' PID

Fields of Pid

channel_id: u32

Channel ID of shell session

pid: u32

PID of remote process

Spawn

This message is sent to the shell service to request a child process to be spawned.

Fields of Spawn

channel_id: u32

Channel ID of shell session

command: String

Process command to spawn

args: Option<Vec<String>>

Optional arguments to pass into command when spawning

Stdout

This message is sent by the shell service when a process has produced stdout data. The shell service will send this message with no data when the stdout pipe is closed.

Fields of Stdout

channel_id: u32

Channel ID of shell session

data: Option<String>

Optional stdout data

Stderr

This message is sent by the shell service when a process has produced stderr data. The shell service will send this message with no data when the stderr pipe is closed.

Fields of Stderr

channel_id: u32

Channel ID of shell session

data: Option<String>

Optional stdout data

Stdin

This message is sent by the shell client with stdin for a shell process. If sent without any data the shell service will close the stdin pipe.

Fields of Stdin

channel_id: u32

Channel ID of shell session

data: Option<String>

Optional stdin data

Trait Implementations

impl Eq for Message[src]

impl PartialEq<Message> for Message[src]

impl Debug for Message[src]

Auto Trait Implementations

impl Send for Message

impl Unpin for Message

impl Sync for Message

impl UnwindSafe for Message

impl RefUnwindSafe for Message

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]