1#[derive(Clone, PartialEq, ::prost::Message)]
4pub struct SetupConnectionRequest {
5 #[prost(string, tag="1")]
7 pub target: ::prost::alloc::string::String,
8 #[prost(string, tag="2")]
10 pub user: ::prost::alloc::string::String,
11 #[prost(map="string, string", tag="3")]
13 pub env: ::std::collections::HashMap<::prost::alloc::string::String, ::prost::alloc::string::String>,
14 #[prost(string, tag="4")]
16 pub command: ::prost::alloc::string::String,
17 #[prost(string, repeated, tag="5")]
19 pub argv: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
20 #[prost(int32, tag="6")]
22 pub window_rows: i32,
23 #[prost(int32, tag="7")]
25 pub window_cols: i32,
26 #[prost(bool, tag="8")]
30 pub nopty: bool,
31 #[prost(string, tag="9")]
33 pub cwd: ::prost::alloc::string::String,
34 #[prost(int32, tag="10")]
36 pub cwd_pid: i32,
37}
38#[derive(Clone, PartialEq, ::prost::Message)]
40pub struct SetupConnectionResponse {
41 #[prost(enumeration="ConnectionStatus", tag="1")]
43 pub status: i32,
44 #[prost(string, tag="2")]
47 pub description: ::prost::alloc::string::String,
48 #[prost(int32, tag="3")]
50 pub pid: i32,
51}
52#[derive(Clone, PartialEq, ::prost::Message)]
55pub struct ConnectionStatusMessage {
56 #[prost(enumeration="ConnectionStatus", tag="1")]
59 pub status: i32,
60 #[prost(string, tag="2")]
62 pub description: ::prost::alloc::string::String,
63 #[prost(sint32, tag="3")]
65 pub code: i32,
66}
67#[derive(Clone, PartialEq, ::prost::Message)]
69pub struct DataMessage {
70 #[prost(enumeration="StdioStream", tag="1")]
72 pub stream: i32,
73 #[prost(bytes="vec", tag="2")]
75 pub data: ::prost::alloc::vec::Vec<u8>,
76}
77#[derive(Clone, PartialEq, ::prost::Message)]
80pub struct WindowResizeMessage {
81 #[prost(int32, tag="1")]
83 pub rows: i32,
84 #[prost(int32, tag="2")]
86 pub cols: i32,
87}
88#[derive(Clone, PartialEq, ::prost::Message)]
90pub struct HostMessage {
91 #[prost(oneof="host_message::Msg", tags="1, 2")]
92 pub msg: ::core::option::Option<host_message::Msg>,
93}
94pub mod host_message {
96 #[derive(Clone, PartialEq, ::prost::Oneof)]
97 pub enum Msg {
98 #[prost(message, tag="1")]
99 DataMessage(super::DataMessage),
100 #[prost(message, tag="2")]
101 StatusMessage(super::ConnectionStatusMessage),
102 }
103}
104#[derive(Clone, PartialEq, ::prost::Message)]
106pub struct GuestMessage {
107 #[prost(oneof="guest_message::Msg", tags="1, 2, 3, 4")]
108 pub msg: ::core::option::Option<guest_message::Msg>,
109}
110pub mod guest_message {
112 #[derive(Clone, PartialEq, ::prost::Oneof)]
113 pub enum Msg {
114 #[prost(message, tag="1")]
115 DataMessage(super::DataMessage),
116 #[prost(message, tag="2")]
117 StatusMessage(super::ConnectionStatusMessage),
118 #[prost(message, tag="3")]
119 ResizeMessage(super::WindowResizeMessage),
120 #[prost(enumeration="super::Signal", tag="4")]
121 Signal(i32),
122 }
123}
124#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
126#[repr(i32)]
127pub enum ConnectionStatus {
128 Unknown = 0,
130 Ready = 1,
133 Exited = 2,
136 Failed = 3,
138}
139impl ConnectionStatus {
140 pub fn as_str_name(&self) -> &'static str {
145 match self {
146 ConnectionStatus::Unknown => "UNKNOWN",
147 ConnectionStatus::Ready => "READY",
148 ConnectionStatus::Exited => "EXITED",
149 ConnectionStatus::Failed => "FAILED",
150 }
151 }
152}
153#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
155#[repr(i32)]
156pub enum StdioStream {
157 InvalidStream = 0,
159 StdinStream = 1,
161 StdoutStream = 2,
163 StderrStream = 3,
165}
166impl StdioStream {
167 pub fn as_str_name(&self) -> &'static str {
172 match self {
173 StdioStream::InvalidStream => "INVALID_STREAM",
174 StdioStream::StdinStream => "STDIN_STREAM",
175 StdioStream::StdoutStream => "STDOUT_STREAM",
176 StdioStream::StderrStream => "STDERR_STREAM",
177 }
178 }
179}
180#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
182#[repr(i32)]
183pub enum Signal {
184 Unknown = 0,
185 Hup = 1,
186 Int = 2,
187 Quit = 3,
188 Term = 15,
189}
190impl Signal {
191 pub fn as_str_name(&self) -> &'static str {
196 match self {
197 Signal::Unknown => "SIGNAL_UNKNOWN",
198 Signal::Hup => "SIGNAL_HUP",
199 Signal::Int => "SIGNAL_INT",
200 Signal::Quit => "SIGNAL_QUIT",
201 Signal::Term => "SIGNAL_TERM",
202 }
203 }
204}