diff options
| author | Max Audron <audron@cocaine.farm> | 2020-01-17 10:47:50 +0100 |
|---|---|---|
| committer | Max Audron <audron@cocaine.farm> | 2020-01-17 10:48:44 +0100 |
| commit | de973723312c56a58651f12146668500697543c0 (patch) | |
| tree | f7cc1e5f9039101bc199e611901b162aa4ed13b1 /src/net.rs | |
| parent | refactor parse impl (diff) | |
finish main parsing
Diffstat (limited to 'src/net.rs')
| -rw-r--r-- | src/net.rs | 10 |
1 files changed, 3 insertions, 7 deletions
@@ -23,17 +23,13 @@ impl Client { pub fn login(&mut self, user: &'static str, pass: &'static str, client: message::ClientInit) { use crate::protocol::message::handshake::{HandshakeDeserialize, HandshakeSerialize, HandshakeQRead, VariantMap}; use crate::protocol::message::handshake::{ClientInit, ClientInitAck}; - use std::convert::TryInto; - let sclientinit = &client.serialize(); - let len: u32 = sclientinit.len().try_into().unwrap(); -// self.tcp_stream.write(&len.to_be_bytes()).unwrap(); - self.tcp_stream.write(sclientinit).unwrap(); + self.tcp_stream.write(&client.serialize()).unwrap(); let mut buf: Vec<u8> = [0; 2048].to_vec(); - VariantMap::read(&mut self.tcp_stream, &mut buf); + let len = VariantMap::read(&mut self.tcp_stream, &mut buf); + buf.truncate(len); - // println!("{:?}", buf); let res = ClientInitAck::parse(&buf); println!("{:?}", res) } |
