From e5ded9a2fb3959fcca0b008ea5e602b8fe6ebb07 Mon Sep 17 00:00:00 2001 From: md_5 Date: Fri, 21 May 2021 08:16:51 +1000 Subject: [PATCH] Apply stricter length limits to client strings Also bump snapshot version and remove redundant file header --- .../main/java/net/md_5/bungee/protocol/ProtocolConstants.java | 2 +- .../src/main/java/net/md_5/bungee/protocol/packet/Chat.java | 2 +- .../java/net/md_5/bungee/protocol/packet/ClientSettings.java | 2 +- .../main/java/net/md_5/bungee/protocol/packet/Handshake.java | 2 +- .../java/net/md_5/bungee/protocol/packet/LoginRequest.java | 4 ---- .../net/md_5/bungee/protocol/packet/TabCompleteRequest.java | 2 +- 6 files changed, 5 insertions(+), 9 deletions(-) diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/ProtocolConstants.java b/protocol/src/main/java/net/md_5/bungee/protocol/ProtocolConstants.java index 30f1306a..45fe954c 100644 --- a/protocol/src/main/java/net/md_5/bungee/protocol/ProtocolConstants.java +++ b/protocol/src/main/java/net/md_5/bungee/protocol/ProtocolConstants.java @@ -34,7 +34,7 @@ public class ProtocolConstants public static final int MINECRAFT_1_16_2 = 751; public static final int MINECRAFT_1_16_3 = 753; public static final int MINECRAFT_1_16_4 = 754; - public static final int MINECRAFT_1_17 = 1073741851; + public static final int MINECRAFT_1_17 = 1073741852; public static final List SUPPORTED_VERSIONS; public static final List SUPPORTED_VERSION_IDS; diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/packet/Chat.java b/protocol/src/main/java/net/md_5/bungee/protocol/packet/Chat.java index 7a0a1ce7..bc43d1d7 100644 --- a/protocol/src/main/java/net/md_5/bungee/protocol/packet/Chat.java +++ b/protocol/src/main/java/net/md_5/bungee/protocol/packet/Chat.java @@ -40,7 +40,7 @@ public class Chat extends DefinedPacket @Override public void read(ByteBuf buf, ProtocolConstants.Direction direction, int protocolVersion) { - message = readString( buf ); + message = readString( buf, 256 ); if ( direction == ProtocolConstants.Direction.TO_CLIENT ) { position = buf.readByte(); diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/packet/ClientSettings.java b/protocol/src/main/java/net/md_5/bungee/protocol/packet/ClientSettings.java index 886cb916..29440533 100644 --- a/protocol/src/main/java/net/md_5/bungee/protocol/packet/ClientSettings.java +++ b/protocol/src/main/java/net/md_5/bungee/protocol/packet/ClientSettings.java @@ -28,7 +28,7 @@ public class ClientSettings extends DefinedPacket @Override public void read(ByteBuf buf, ProtocolConstants.Direction direction, int protocolVersion) { - locale = readString( buf ); + locale = readString( buf, 16 ); viewDistance = buf.readByte(); chatFlags = protocolVersion >= ProtocolConstants.MINECRAFT_1_9 ? DefinedPacket.readVarInt( buf ) : buf.readUnsignedByte(); chatColours = buf.readBoolean(); diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/packet/Handshake.java b/protocol/src/main/java/net/md_5/bungee/protocol/packet/Handshake.java index 70934a5b..7dbbfd3c 100644 --- a/protocol/src/main/java/net/md_5/bungee/protocol/packet/Handshake.java +++ b/protocol/src/main/java/net/md_5/bungee/protocol/packet/Handshake.java @@ -24,7 +24,7 @@ public class Handshake extends DefinedPacket public void read(ByteBuf buf) { protocolVersion = readVarInt( buf ); - host = readString( buf ); + host = readString( buf, 255 ); port = buf.readUnsignedShort(); requestedProtocol = readVarInt( buf ); } diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/packet/LoginRequest.java b/protocol/src/main/java/net/md_5/bungee/protocol/packet/LoginRequest.java index a691f962..08ee376e 100644 --- a/protocol/src/main/java/net/md_5/bungee/protocol/packet/LoginRequest.java +++ b/protocol/src/main/java/net/md_5/bungee/protocol/packet/LoginRequest.java @@ -1,7 +1,3 @@ -/* - * To change this template, choose Tools | Templates - * and open the template in the editor. - */ package net.md_5.bungee.protocol.packet; import io.netty.buffer.ByteBuf; diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/packet/TabCompleteRequest.java b/protocol/src/main/java/net/md_5/bungee/protocol/packet/TabCompleteRequest.java index d6865ae2..88d631cd 100644 --- a/protocol/src/main/java/net/md_5/bungee/protocol/packet/TabCompleteRequest.java +++ b/protocol/src/main/java/net/md_5/bungee/protocol/packet/TabCompleteRequest.java @@ -41,7 +41,7 @@ public class TabCompleteRequest extends DefinedPacket { transactionId = readVarInt( buf ); } - cursor = readString( buf ); + cursor = readString( buf, 32500 ); if ( protocolVersion < ProtocolConstants.MINECRAFT_1_13 ) {