mirror of
https://github.com/PaperMC/Waterfall.git
synced 2024-12-28 19:47:50 +01:00
28 lines
1.2 KiB
Diff
28 lines
1.2 KiB
Diff
From eea04c872972cf457d2ffc61fda629c4ad7c21d0 Mon Sep 17 00:00:00 2001
|
|
From: PermisosDev <55111245+PermisosDev@users.noreply.github.com>
|
|
Date: Thu, 15 Apr 2021 08:34:57 -0300
|
|
Subject: [PATCH] Check if packetID is invalid.
|
|
|
|
|
|
diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/MinecraftDecoder.java b/protocol/src/main/java/net/md_5/bungee/protocol/MinecraftDecoder.java
|
|
index 28edad1a..f0761a4f 100644
|
|
--- a/protocol/src/main/java/net/md_5/bungee/protocol/MinecraftDecoder.java
|
|
+++ b/protocol/src/main/java/net/md_5/bungee/protocol/MinecraftDecoder.java
|
|
@@ -65,7 +65,12 @@ public class MinecraftDecoder extends MessageToMessageDecoder<ByteBuf>
|
|
|
|
int packetId = DefinedPacket.readVarInt( in );
|
|
packetTypeInfo = packetId;
|
|
-
|
|
+ // FlameCord Start - Check if packetId is invalid.
|
|
+ if (packetId < 0 || packetId > Protocol.MAX_PACKET_ID)
|
|
+ {
|
|
+ throw new FastDecoderException( "[" + ctx.channel().remoteAddress() + "] <-> MinecraftDecoder received invalid packet #1, id " + packetId );
|
|
+ }
|
|
+ // Flamecord End
|
|
DefinedPacket packet = prot.createPacket( packetId, protocolVersion, supportsForge );
|
|
if ( packet != null )
|
|
{
|
|
--
|
|
2.31.1
|
|
|