From d61085b1abc3ad665fa621e71c7bfd479172eaa4 Mon Sep 17 00:00:00 2001 From: CosminPerRam Date: Tue, 27 Jun 2023 00:17:33 +0300 Subject: [PATCH] [Protocol] Remove bufferer::data_length function and replace its usage --- src/bufferer.rs | 4 +--- src/protocols/minecraft/protocol/legacy_bv1_8.rs | 5 +++-- src/protocols/minecraft/protocol/legacy_v1_4.rs | 5 +++-- src/protocols/minecraft/protocol/legacy_v1_6.rs | 5 +++-- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/bufferer.rs b/src/bufferer.rs index 55120e5..7cd423a 100644 --- a/src/bufferer.rs +++ b/src/bufferer.rs @@ -164,13 +164,11 @@ impl Bufferer { pub fn move_position_backward(&mut self, by: usize) { self.position -= by; } - pub fn data_length(&self) -> usize { self.data.len() } - pub fn remaining_data(&self) -> &[u8] { &self.data[self.position ..] } pub fn remaining_data_vec(&self) -> Vec { self.remaining_data().to_vec() } - pub fn remaining_length(&self) -> usize { self.data_length() - self.position } + pub fn remaining_length(&self) -> usize { self.data.len() - self.position } pub fn is_remaining_empty(&self) -> bool { self.remaining_length() == 0 } diff --git a/src/protocols/minecraft/protocol/legacy_bv1_8.rs b/src/protocols/minecraft/protocol/legacy_bv1_8.rs index 13e4867..ea1767c 100644 --- a/src/protocols/minecraft/protocol/legacy_bv1_8.rs +++ b/src/protocols/minecraft/protocol/legacy_bv1_8.rs @@ -28,14 +28,15 @@ impl LegacyBV1_8 { fn get_info(&mut self) -> GDResult { self.send_initial_request()?; - let mut buffer = Bufferer::new_with_data(Endianess::Big, &self.socket.receive(None)?); + let data = self.socket.receive(None)?; + let mut buffer = Bufferer::new_with_data(Endianess::Big, &data); if buffer.get_u8()? != 0xFF { return Err(ProtocolFormat); } let length = buffer.get_u16()? * 2; - error_by_expected_size((length + 3) as usize, buffer.data_length())?; + error_by_expected_size((length + 3) as usize, data.len())?; let packet_string = buffer.get_string_utf16()?; diff --git a/src/protocols/minecraft/protocol/legacy_v1_4.rs b/src/protocols/minecraft/protocol/legacy_v1_4.rs index e9e5077..5c4244c 100644 --- a/src/protocols/minecraft/protocol/legacy_v1_4.rs +++ b/src/protocols/minecraft/protocol/legacy_v1_4.rs @@ -28,14 +28,15 @@ impl LegacyV1_4 { fn get_info(&mut self) -> GDResult { self.send_initial_request()?; - let mut buffer = Bufferer::new_with_data(Endianess::Big, &self.socket.receive(None)?); + let data = self.socket.receive(None)?; + let mut buffer = Bufferer::new_with_data(Endianess::Big, &data); if buffer.get_u8()? != 0xFF { return Err(ProtocolFormat); } let length = buffer.get_u16()? * 2; - error_by_expected_size((length + 3) as usize, buffer.data_length())?; + error_by_expected_size((length + 3) as usize, data.len())?; if LegacyV1_6::is_protocol(&mut buffer)? { return LegacyV1_6::get_response(&mut buffer); diff --git a/src/protocols/minecraft/protocol/legacy_v1_6.rs b/src/protocols/minecraft/protocol/legacy_v1_6.rs index e1f9d9c..3e0e618 100644 --- a/src/protocols/minecraft/protocol/legacy_v1_6.rs +++ b/src/protocols/minecraft/protocol/legacy_v1_6.rs @@ -77,14 +77,15 @@ impl LegacyV1_6 { fn get_info(&mut self) -> GDResult { self.send_initial_request()?; - let mut buffer = Bufferer::new_with_data(Endianess::Big, &self.socket.receive(None)?); + let data = self.socket.receive(None)?; + let mut buffer = Bufferer::new_with_data(Endianess::Big, &data); if buffer.get_u8()? != 0xFF { return Err(ProtocolFormat); } let length = buffer.get_u16()? * 2; - error_by_expected_size((length + 3) as usize, buffer.data_length())?; + error_by_expected_size((length + 3) as usize, data.len())?; if !LegacyV1_6::is_protocol(&mut buffer)? { return Err(ProtocolFormat);