Skip to content

Commit 45f7aeb

Browse files
authored
Refactor: Connection::open_new_session_impl (#10)
Serialize `term_len` manually to avoid confusion. Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
1 parent 7ab4dff commit 45f7aeb

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed

src/connection.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -222,22 +222,24 @@ impl Connection {
222222
agent: session.agent,
223223
subsystem: session.subsystem,
224224
escape_ch: session.escape_ch,
225-
term_len,
226225
},
227226
};
228227

229228
// Serialize
230229
self.reset_serializer();
231230

232231
request.serialize(&mut self.serializer)?;
233-
let serialized_header = self
234-
.serializer
235-
.get_output_with_data(term_len + /* len of cmd */ 4 + cmd_len)?;
232+
let serialized_header = self.serializer.get_output_with_data(
233+
/* len of term */ 4 + term_len + /* len of cmd */ 4 + cmd_len,
234+
)?;
235+
236236
let serialized_cmd_len = serialize_u32(cmd_len);
237+
let serialized_term_len = serialize_u32(term_len);
237238

238239
// Write them to self.raw_conn
239240
let mut io_slices = [
240241
IoSlice::new(serialized_header),
242+
IoSlice::new(&serialized_term_len),
241243
IoSlice::new(term),
242244
IoSlice::new(&serialized_cmd_len),
243245
IoSlice::new(cmd),

src/request.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,9 +108,6 @@ pub(crate) struct SessionZeroCopy {
108108
pub subsystem: bool,
109109

110110
pub escape_ch: char,
111-
112-
/// len of [`Session::term`].
113-
pub term_len: u32,
114111
}
115112

116113
#[derive(Clone, Debug, Eq, PartialEq, Hash, Serialize, TypedBuilder)]

0 commit comments

Comments
 (0)