aboutsummaryrefslogtreecommitdiff
path: root/src/protocol/message
diff options
context:
space:
mode:
Diffstat (limited to 'src/protocol/message')
-rw-r--r--src/protocol/message/handshake/types.rs19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/protocol/message/handshake/types.rs b/src/protocol/message/handshake/types.rs
index f099b0f..c809764 100644
--- a/src/protocol/message/handshake/types.rs
+++ b/src/protocol/message/handshake/types.rs
@@ -74,18 +74,19 @@ impl HandshakeQRead for VariantMap {
fn read<T: Read>(s: &mut T, b: &mut [u8]) -> Result<usize, ErrorKind> {
s.read(&mut b[0..4])?;
let (_, len) = i32::parse(&b[0..4])?;
+ let ulen = len as usize;
// Read the 00 00 00 0a VariantType bytes and discard
- s.read(&mut b[4..8])?;
+ s.read(&mut b[4..ulen])?;
- let mut pos = 8;
- let len: usize = len as usize;
- loop {
- if pos >= len { break; }
- pos += Variant::read(s, &mut b[pos..])?;
- pos += Variant::read(s, &mut b[pos..])?;
- }
+// let mut pos = 8;
+// let len: usize = len as usize;
+// loop {
+// if pos >= len { break; }
+// pos += Variant::read(s, &mut b[pos..])?;
+// pos += Variant::read(s, &mut b[pos..])?;
+// }
- return Ok(pos);
+ return Ok(ulen + 4);
}
}