Updated Upstream (BungeeCord)

Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Do note that OSX natives are now compiled for Apple Silicon, Long Live ARM

BungeeCord Changes:
6f70b15e Minecraft 1.20.5 support
b30499e2 #3667: Bump org.apache.maven.plugins:maven-jar-plugin from 3.4.0 to 3.4.1
5079181c Minecraft 1.20.5-rc3 support
ee02d98c Minecraft 1.20.5-rc2 support
c7ff3b8a #3654: Update year in README.md
de60af0d #3659: Cleanup command packets for 1.20.5
a9218a7a #3660: Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.3 to 3.2.4
67c65e04 #3658: Minecraft 1.20.5-rc1 support
1be25b6c #3656: Improve online mode support where IP forwarding is disabled
8525b449 Minecraft 1.20.5-pre3 support
1fca510a #3655: Fix 1.20.5-pre1 view distance packet ID
33841852 #3652: Bump org.apache.maven.plugins:maven-jar-plugin from 3.3.0 to 3.4.0
3075d2c1 #3651: Bump io.netty:netty-bom from 4.1.108.Final to 4.1.109.Final
bc528d5d Update native libraries
25cf8d68 #3617: Don't go further if connection is disconnected during handshake event
17e23d5c #3628: Convert PostLoginEvent to AsyncEvent and expose target server
d6c5197c #3599: Bump com.mysql:mysql-connector-j from 8.2.0 to 8.3.0
dd96f0f8 #3647: Bump org.apache.maven.plugins:maven-gpg-plugin from 3.2.2 to 3.2.3
8a9501ff Minecraft 1.20.5-pre1 support
This commit is contained in:
Shane Freeder 2024-04-23 19:11:12 +01:00
parent 483d6eef7d
commit 86c4420d6d
No known key found for this signature in database
GPG Key ID: A3F61EA5A085289C
18 changed files with 855 additions and 1230 deletions

@ -1 +1 @@
Subproject commit 5e25c63c5a2a40026d5b441fc0809172328aa328
Subproject commit 6f70b15e2ea7f01e9d8690e56d476cfcfc68ef2c

View File

@ -1,14 +1,14 @@
From a7831360e8f8300b9aa7d3f340b609991a8f6150 Mon Sep 17 00:00:00 2001
From a711f758f121225516b930a37d60a995354ace22 Mon Sep 17 00:00:00 2001
From: Troy Frew <fuzzy_bot@arenaga.me>
Date: Tue, 15 Nov 2016 09:07:51 -0500
Subject: [PATCH] Fixup ProtocolConstants
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 fdfa1480..e158a2d3 100644
index 40045b77..c6ad1f54 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
@@ -117,6 +117,16 @@ public class ProtocolConstants
@@ -118,6 +118,16 @@ public class ProtocolConstants
SUPPORTED_VERSION_IDS = supportedVersionIds.build();
}
@ -26,5 +26,5 @@ index fdfa1480..e158a2d3 100644
{
--
2.43.0.windows.1
2.44.0

View File

@ -1,4 +1,4 @@
From 3916ceec65caec4aaa4f049a5477856ccb69274a Mon Sep 17 00:00:00 2001
From 064c9dfefd11db8d743f61ab3a4003dca63f3f7b Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@outlook.com>
Date: Mon, 14 Mar 2016 15:40:44 -0700
Subject: [PATCH] Optimize uuid conversions
@ -250,10 +250,10 @@ index e582808f..29cd91dd 100644
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index d9247fb2..43fb3208 100644
index 1d9a9ee5..616adcf1 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -788,7 +788,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -806,7 +806,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@Override
public String getUUID()
{
@ -263,5 +263,5 @@ index d9247fb2..43fb3208 100644
@Override
--
2.43.0.windows.1
2.44.0

View File

@ -1,4 +1,4 @@
From 702afc4df45926f3d96841ffb908f3b85cb2d3f0 Mon Sep 17 00:00:00 2001
From ea36c5dc9f008d20bbef476f4af4f0ce9301aed0 Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@techcable.net>
Date: Thu, 19 May 2016 17:09:22 -0600
Subject: [PATCH] Allow invalid packet ids for forge servers
@ -37,10 +37,10 @@ index d79d5e5c..250e7620 100644
{
packet.read( in, protocol, prot.getDirection(), protocolVersion );
diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java b/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java
index cb5c30d5..a8a91955 100644
index 2271a2e5..d932b696 100644
--- a/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java
+++ b/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java
@@ -861,14 +861,23 @@ public enum Protocol
@@ -862,14 +862,23 @@ public enum Protocol
return protocol;
}
@ -66,7 +66,7 @@ index cb5c30d5..a8a91955 100644
throw new BadPacketException( "Packet with id " + id + " outside of range" );
}
diff --git a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
index 37f86325..1b7395ad 100644
index 7a211f1b..a25a493e 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -234,6 +234,12 @@ public class ServerConnector extends PacketHandler

View File

@ -1,4 +1,4 @@
From f3c9d4d4def15946b7de244db86dd3d41e6b8c00 Mon Sep 17 00:00:00 2001
From d5eaa35359d90f611f6450fb6ee12014e0a13921 Mon Sep 17 00:00:00 2001
From: Janmm14 <computerjanimaus@yahoo.de>
Date: Sat, 12 Dec 2015 23:43:30 +0100
Subject: [PATCH] Improve server list ping logging
@ -7,7 +7,7 @@ This functionality of this patch was adopted upstream, however, this
patch remains for a few misc improvements around here
diff --git a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
index 1b7395ad..e670a57a 100644
index a25a493e..63920e7e 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -522,6 +522,6 @@ public class ServerConnector extends PacketHandler
@ -31,10 +31,10 @@ index d408840d..cd3ed518 100644
}
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index 43fb3208..4325fe23 100644
index 616adcf1..0fbe8b0d 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -794,20 +794,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -812,20 +812,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@Override
public String toString()
{
@ -57,7 +57,7 @@ index 43fb3208..4325fe23 100644
@Override
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java
index 050cc29b..740c90ec 100644
index bfd5cb5f..2dafa4d9 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java
@@ -396,6 +396,6 @@ public class UpstreamBridge extends PacketHandler

View File

@ -1,4 +1,4 @@
From 10ab9f8cff10028bd518507ce3a122897f32d202 Mon Sep 17 00:00:00 2001
From 34c7d23c344f60184778406b573dfaa6209be1a9 Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@outlook.com>
Date: Sun, 7 Feb 2016 00:01:19 -0700
Subject: [PATCH] Add a property to accept invalid ping packets
@ -9,10 +9,10 @@ You can enable it by setting '-Dwaterfall.acceptInvalidPackets=true' at the comm
Fixes #23
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index 4325fe23..b7dd5fe3 100644
index 0fbe8b0d..deb9fef3 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -323,10 +323,14 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -325,10 +325,14 @@ public class InitialHandler extends PacketHandler implements PendingConnection
thisState = State.PING;
}
@ -29,5 +29,5 @@ index 4325fe23..b7dd5fe3 100644
disconnect( "" );
}
--
2.43.0.windows.1
2.44.0

View File

@ -1,4 +1,4 @@
From 6568f09ce8c2d9ad4743de43363784c40c3bce11 Mon Sep 17 00:00:00 2001
From d45c224f7f456f0df39e9dea42d026fed59fcd77 Mon Sep 17 00:00:00 2001
From: phenomax <phenomax@revayd.net>
Date: Thu, 10 Aug 2017 18:41:17 +0200
Subject: [PATCH] Providing access to the player's LoginResult on LoginEvent
@ -51,10 +51,10 @@ similarity index 100%
rename from proxy/src/main/java/net/md_5/bungee/connection/LoginResult.java
rename to api/src/main/java/net/md_5/bungee/connection/LoginResult.java
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index b7dd5fe3..5fd26bf1 100644
index deb9fef3..05261ccf 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -644,7 +644,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -653,7 +653,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
};
// fire login event

View File

@ -1,4 +1,4 @@
From a3bcb041e962b0aa7a546f475a52fb12ab6403f4 Mon Sep 17 00:00:00 2001
From 34ee64660bf849e84b516b691fde2772ff3f758e Mon Sep 17 00:00:00 2001
From: Gabriele C <sgdc3.mail@gmail.com>
Date: Thu, 8 Feb 2018 19:10:52 +0100
Subject: [PATCH] Optionally log InitialHandler connections
@ -61,10 +61,10 @@ index ef44d334..4ff8da6d 100644
public String getGameVersion() {
return gameVersion;
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index 5fd26bf1..ccc80506 100644
index 05261ccf..fcd973e5 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -380,7 +380,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -388,7 +388,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
case 3:
transferred = handshake.getRequestedProtocol() == 3;
// Login

View File

@ -1,4 +1,4 @@
From 205d40bd64875c6ae94ce8c9e9c66ddfc13c6089 Mon Sep 17 00:00:00 2001
From 3eb3ba0ef9ff74b095ea44a1385af0b3a5a71293 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Mon, 14 Jan 2019 03:35:21 +0000
Subject: [PATCH] Provide an option to disable entity metadata rewriting
@ -57,7 +57,7 @@ index 4ff8da6d..e860214f 100644
+ }
}
diff --git a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
index 307a417b..43d13e36 100644
index e10f33ad..c0c523e3 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -264,7 +264,8 @@ public class ServerConnector extends PacketHandler
@ -123,10 +123,10 @@ index 307a417b..43d13e36 100644
(byte) 0, login.getDeathLocation(), login.getPortalCooldown() ) );
if ( user.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_14 )
diff --git a/proxy/src/main/java/net/md_5/bungee/UserConnection.java b/proxy/src/main/java/net/md_5/bungee/UserConnection.java
index 86223e17..ee527938 100644
index d15f2bcc..b8762fc0 100644
--- a/proxy/src/main/java/net/md_5/bungee/UserConnection.java
+++ b/proxy/src/main/java/net/md_5/bungee/UserConnection.java
@@ -816,4 +816,9 @@ public final class UserConnection implements ProxiedPlayer
@@ -821,4 +821,9 @@ public final class UserConnection implements ProxiedPlayer
unsafe().sendPacket( new Transfer( host, port ) );
}

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
From 6813e1365f919ea61338f6201b3ff516ec958752 Mon Sep 17 00:00:00 2001
From 9abe9adf843bb142e7ff2d5888f49d89ed08367a Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Mon, 25 Nov 2019 19:54:06 +0000
Subject: [PATCH] Speed up some common exceptions
@ -172,7 +172,7 @@ index 237955ab..d0bd4d75 100644
+ // Waterfall end
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index ccc80506..d8d65093 100644
index fcd973e5..473edd76 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -21,6 +21,8 @@ import javax.crypto.SecretKey;
@ -184,7 +184,7 @@ index ccc80506..d8d65093 100644
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.ToString;
@@ -502,6 +504,14 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -510,6 +512,14 @@ public class InitialHandler extends PacketHandler implements PendingConnection
Preconditions.checkState( EncryptionUtil.check( loginRequest.getPublicKey(), encryptResponse, request ), "Invalid verification" );
SecretKey sharedKey = EncryptionUtil.getSecret( encryptResponse, request );

View File

@ -1,11 +1,11 @@
From f1aae6c964dfc1b53891c412dbf2073e48f4ef36 Mon Sep 17 00:00:00 2001
From 0e7f030c8314b7ca0176021eb3cb8dc85ac60832 Mon Sep 17 00:00:00 2001
From: theminecoder <theminecoder.dev@gmail.com>
Date: Sun, 19 Jul 2020 10:18:23 +1000
Subject: [PATCH] Add auth url option
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index d8d65093..ffb078d6 100644
index 473edd76..d095e5f9 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -83,6 +83,8 @@ import net.md_5.bungee.util.QuietException;
@ -17,7 +17,7 @@ index d8d65093..ffb078d6 100644
private final BungeeCord bungee;
private ChannelWrapper ch;
@Getter
@@ -530,7 +532,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -538,7 +540,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
String encodedHash = URLEncoder.encode( new BigInteger( sha.digest() ).toString( 16 ), "UTF-8" );
String preventProxy = ( BungeeCord.getInstance().config.isPreventProxyConnections() && getSocketAddress() instanceof InetSocketAddress ) ? "&ip=" + URLEncoder.encode( getAddress().getAddress().getHostAddress(), "UTF-8" ) : "";

View File

@ -1,4 +1,4 @@
From 8eda531051300bfd546f283c371ea52d863e800f Mon Sep 17 00:00:00 2001
From 6603022d84bbaf4302d6e65fe79282924cbe8679 Mon Sep 17 00:00:00 2001
From: FivePB <admin@fivepb.me>
Date: Tue, 16 Nov 2021 21:15:32 +0100
Subject: [PATCH] Configurable plugin messaging limits
@ -83,10 +83,10 @@ index b88e3c8a..da0efa36 100644
+ }
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index ffb078d6..bb9063f6 100644
index d095e5f9..864cb119 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -830,9 +830,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -848,9 +848,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
for ( String id : content.split( "\0" ) )
{

View File

@ -1,14 +1,14 @@
From f97fb438b8ac483a526e36da5af9728bbb306b20 Mon Sep 17 00:00:00 2001
From 91ba8610d491e730d73485443773c8a24024a4d0 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Sun, 8 May 2022 12:04:30 +0100
Subject: [PATCH] Improve login state transition
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index bb9063f6..f5959b66 100644
index 864cb119..6344462c 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -504,6 +504,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -512,6 +512,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
{
Preconditions.checkState( thisState == State.ENCRYPT, "Not expecting ENCRYPT" );
Preconditions.checkState( EncryptionUtil.check( loginRequest.getPublicKey(), encryptResponse, request ), "Invalid verification" );
@ -16,7 +16,7 @@ index bb9063f6..f5959b66 100644
SecretKey sharedKey = EncryptionUtil.getSecret( encryptResponse, request );
// Waterfall start
@@ -558,7 +559,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -566,7 +567,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
}
}
};

View File

@ -1,4 +1,4 @@
From 788bf1c83bc29931fa2205fe3c804b0e8a3a59ba Mon Sep 17 00:00:00 2001
From f9ca58d3ac570d6f371413fbb3536c881480418e Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Sun, 12 Jun 2022 06:45:54 +0100
Subject: [PATCH] Add protocol version to packet not found message
@ -6,7 +6,7 @@ Subject: [PATCH] Add protocol version to packet not found message
Also avoids a double get, but, this is probably trivial
diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java b/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java
index a8a91955..414d4578 100644
index d932b696..7a29eb0d 100644
--- a/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java
+++ b/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java
@@ -2,6 +2,8 @@ package net.md_5.bungee.protocol;
@ -18,7 +18,7 @@ index a8a91955..414d4578 100644
import gnu.trove.map.TIntObjectMap;
import gnu.trove.map.TObjectIntMap;
import gnu.trove.map.hash.TIntObjectHashMap;
@@ -942,9 +944,12 @@ public enum Protocol
@@ -943,9 +945,12 @@ public enum Protocol
{
throw new BadPacketException( "Unsupported protocol version" );
}

View File

@ -1,4 +1,4 @@
From b8e82d2bdf3c1b23c0338fc239357eb7dc626f1f Mon Sep 17 00:00:00 2001
From 1c5029315edd50653076483bba5e7e406fe07848 Mon Sep 17 00:00:00 2001
From: Aurora <aurora@relanet.eu>
Date: Mon, 18 Jul 2022 15:56:05 +0200
Subject: [PATCH] Add message for outdated clients that don't support secure
@ -8,10 +8,10 @@ Clients before 1.19 don't support secure profiles, but since secure profiles is
things checked those outdated clients didn't get a useful message telling them to update.
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index f5959b66..72d48c72 100644
index 6344462c..d58caade 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -427,6 +427,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -435,6 +435,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
if ( BungeeCord.getInstance().config.isEnforceSecureProfile() && getVersion() < ProtocolConstants.MINECRAFT_1_19_3 )
{

View File

@ -1,14 +1,14 @@
From de091e83ba1da7002ffd7b951231c69da7a4ec7c Mon Sep 17 00:00:00 2001
From 52469c9e7dbe741742c9504d69ccfc7e3e90a4f5 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Fri, 21 Apr 2023 15:32:33 +0100
Subject: [PATCH] reduce log spam from clients registeirng too many channels
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index 72d48c72..0b5bee55 100644
index d58caade..f28576f6 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -186,7 +186,17 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -188,7 +188,17 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@Override
public void handle(PluginMessage pluginMessage) throws Exception
{

View File

@ -1,11 +1,11 @@
From 3b82a10c1ff1eacc4d4fa7d7fe16496c570c5662 Mon Sep 17 00:00:00 2001
From a1cd3244c064607b5bc98a9ea9fb5b6ed244c852 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Sun, 15 Oct 2023 00:36:38 +0100
Subject: [PATCH] Prevent proxy commands from breaking the chat chain system
diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/AbstractPacketHandler.java b/protocol/src/main/java/net/md_5/bungee/protocol/AbstractPacketHandler.java
index 14ad2e71..fe6c7339 100644
index 33b246bc..7f5935c3 100644
--- a/protocol/src/main/java/net/md_5/bungee/protocol/AbstractPacketHandler.java
+++ b/protocol/src/main/java/net/md_5/bungee/protocol/AbstractPacketHandler.java
@@ -277,5 +277,9 @@ public abstract class AbstractPacketHandler
@ -19,10 +19,10 @@ index 14ad2e71..fe6c7339 100644
// Waterfall end
}
diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java b/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java
index 414d4578..3a69fced 100644
index 7a29eb0d..67e0f085 100644
--- a/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java
+++ b/protocol/src/main/java/net/md_5/bungee/protocol/Protocol.java
@@ -545,6 +545,13 @@ public enum Protocol
@@ -546,6 +546,13 @@ public enum Protocol
map( ProtocolConstants.MINECRAFT_1_19_1, 0x05 ),
map( ProtocolConstants.MINECRAFT_1_20_5, 0x06 )
);
@ -76,10 +76,10 @@ index 00000000..08ecf2a3
+ }
+}
diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/packet/ClientCommand.java b/protocol/src/main/java/net/md_5/bungee/protocol/packet/ClientCommand.java
index fb53ba74..f8e2db8d 100644
index 887ff29f..d4700090 100644
--- a/protocol/src/main/java/net/md_5/bungee/protocol/packet/ClientCommand.java
+++ b/protocol/src/main/java/net/md_5/bungee/protocol/packet/ClientCommand.java
@@ -118,4 +118,9 @@ public class ClientCommand extends DefinedPacket
@@ -108,4 +108,9 @@ public class ClientCommand extends DefinedPacket
{
handler.handle( this );
}
@ -90,7 +90,7 @@ index fb53ba74..f8e2db8d 100644
+ }
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java
index 740c90ec..134a843f 100644
index 2dafa4d9..b482fe2e 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/UpstreamBridge.java
@@ -196,16 +196,22 @@ public class UpstreamBridge extends PacketHandler
@ -98,27 +98,27 @@ index 740c90ec..134a843f 100644
public void handle(ClientCommand command) throws Exception
{
- handleChat( "/" + command.getCommand() );
+ handleChat( "/" + command.getCommand(), command, null ); // Waterfall
+ handleChat( "/" + command.getCommand(), command );
}
@Override
public void handle(ClientCommandSigned command) throws Exception
public void handle(UnsignedClientCommand command) throws Exception
{
- handleChat( "/" + command.getCommand() );
+ handleChat( "/" + command.getCommand(), null, command ); // Waterfall
+ handleChat( "/" + command.getCommand(), null); // Waterfall
}
private String handleChat(String message)
+ {
+ // Waterfall start
+ return handleChat(message, null, null);
+ return handleChat(message, null);
+ }
+ private String handleChat(String message, @javax.annotation.Nullable ClientCommand clientCommand, @javax.annotation.Nullable ClientCommandSigned clientCommandSigned)
+ private String handleChat(String message, @javax.annotation.Nullable ClientCommand clientCommand)
+ // Waterfall end
{
for ( int index = 0, length = message.length(); index < length; index++ )
{
@@ -224,7 +230,18 @@ public class UpstreamBridge extends PacketHandler
@@ -224,7 +230,13 @@ public class UpstreamBridge extends PacketHandler
if ( !chatEvent.isCommand() || !bungee.getPluginManager().dispatchCommand( con, message.substring( 1 ) ) )
{
return message;
@ -126,11 +126,6 @@ index 740c90ec..134a843f 100644
+ } else if (clientCommand != null && clientCommand.isSigned() && clientCommand.getSeenMessages() != null) {
+ if (con.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_19_3) {
+ con.getServer().unsafe().sendPacket(new net.md_5.bungee.protocol.packet.ClientChatAcknowledgement(clientCommand.getSeenMessages().getOffset()));
+ }
+ // and then for the new one
+ } else if (clientCommandSigned != null) {
+ if (con.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_20_5) {
+ con.getServer().unsafe().sendPacket(new net.md_5.bungee.protocol.packet.ClientChatAcknowledgement(clientCommandSigned.getSeenMessages().getOffset()));
+ }
}
+ // Waterfall end