From ddf5b38905183eaa64c798270bedc4603df50d84 Mon Sep 17 00:00:00 2001 From: Tipragot Date: Wed, 7 Feb 2024 17:46:33 +0100 Subject: [PATCH] Fix connection string length checks --- crates/bevnet/src/lib.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/crates/bevnet/src/lib.rs b/crates/bevnet/src/lib.rs index b169f49..5fb6e45 100644 --- a/crates/bevnet/src/lib.rs +++ b/crates/bevnet/src/lib.rs @@ -101,7 +101,7 @@ impl Connection { let data = BASE64_URL_SAFE_NO_PAD .decode(connection_string) .map_err(io::Error::other)?; - if data.len() != 6 { + if data.len() != 22 { return Err(io::Error::new( io::ErrorKind::InvalidInput, format!("invalid connection string: {}", connection_string), @@ -372,9 +372,10 @@ impl Listener { /// Returns the connection string that can be used to connect to th /// listener. pub fn connection_string(&self) -> String { - let mut data = Vec::with_capacity(24); + let mut data = Vec::with_capacity(22); data.extend(self.2.ip().octets()); data.extend(self.2.port().to_ne_bytes()); + data.extend(self.3); BASE64_URL_SAFE_NO_PAD.encode(&data) } }