From 5d36e5a9bad258b7af00e06f4868c05223fa5968 Mon Sep 17 00:00:00 2001 From: Skye Date: Tue, 6 Feb 2024 15:34:06 +0900 Subject: [PATCH] fix: properly read Status Request --- src/main.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/main.rs b/src/main.rs index 3a0f79e..3479e60 100644 --- a/src/main.rs +++ b/src/main.rs @@ -273,6 +273,12 @@ async fn politely_disconnect( ) -> anyhow::Result<()> { match handshake.next_state { netty::HandshakeType::Status => { + let packet = netty::read_packet(&mut connection).await?; + let mut packet = packet.as_slice(); + let id = packet.read_varint()?; + if id != 0 { + return Err(anyhow!("Packet isn't a Status Request(0x00), but {:#04x}", id)); + } let mut buf = vec![]; buf.write_varint(0).await?; buf.write_string(include_str!("./serverlistping_response.json"))