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

BungeeCord Changes:
c92581d0 #3556: Deserialize arrays to single components
e442c3da #3546: Add string length checks to isValidName
f903c54d #3554: Bump org.apache.maven.plugins:maven-checkstyle-plugin
0d453789 #3540: Add TextComponent#fromLegacy() as an array-free alternative to #fromLegacyText()
0f5f09b6 Minecraft 23w43b support
e5c80d00 Fix code formatting
9cdb2ba3 Deprecate exposed scoreboard API
d0e5cf7c #3549: Bump io.netty:netty-bom from 4.1.99.Final to 4.1.100.Final
c8568764 Fix writing non-compound root NBT tags
This commit is contained in:
Shane Freeder 2023-10-29 16:02:58 +00:00
parent 6dd76006f7
commit dc0595653d
No known key found for this signature in database
GPG Key ID: A3F61EA5A085289C
25 changed files with 155 additions and 146 deletions

@ -1 +1 @@
Subproject commit a7dbbc2f0a4bc741d695016fc9597d185b965e5d
Subproject commit c92581d0dc57840de2a09a8c0cab9fa7773a4d80

View File

@ -1,4 +1,4 @@
From d002f1654018a69fdee68237fff9aa1442363bc2 Mon Sep 17 00:00:00 2001
From 3b1984106e3bfd5e2504ae84797ec65d8a8dca42 Mon Sep 17 00:00:00 2001
From: Tux <write@imaginarycode.com>
Date: Thu, 19 May 2016 19:33:31 +0200
Subject: [PATCH] POM Changes
@ -68,7 +68,7 @@ index 30739518..bdccbd78 100644
<scope>compile</scope>
</dependency>
diff --git a/bootstrap/pom.xml b/bootstrap/pom.xml
index b10e7a38..07d49112 100644
index 2b80f83b..fc09cc11 100644
--- a/bootstrap/pom.xml
+++ b/bootstrap/pom.xml
@@ -4,39 +4,40 @@
@ -515,7 +515,7 @@ index a4265e54..5e9d29d7 100644
<dependencies>
<dependency>
diff --git a/pom.xml b/pom.xml
index ed3c1a87..a6684b7c 100644
index 9725c974..3a72aa08 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,18 +3,25 @@
@ -633,7 +633,7 @@ index ed3c1a87..a6684b7c 100644
+ <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.3.0</version>
<version>3.3.1</version>
@@ -173,6 +197,7 @@
</dependency>
</dependencies>
@ -667,7 +667,7 @@ index ed3c1a87..a6684b7c 100644
</execution>
</executions>
diff --git a/protocol/pom.xml b/protocol/pom.xml
index f1c169a9..12096614 100644
index 4d611101..76a3510d 100644
--- a/protocol/pom.xml
+++ b/protocol/pom.xml
@@ -4,19 +4,19 @@
@ -694,9 +694,9 @@ index f1c169a9..12096614 100644
+ <name>Waterfall-Protocol</name>
+ <description>Minimal implementation of the Minecraft protocol for use in Waterfall</description>
<!-- We really shouldn't depend on external repositories, but at least this is the Central staging one -->
<!-- We really shouldn't depend on external repositories -->
<repositories>
@@ -41,8 +41,8 @@
@@ -35,8 +35,8 @@
<scope>compile</scope>
</dependency>
<dependency>

View File

@ -1,14 +1,14 @@
From d86bb6401198008a6cc41ab73ebd1f253322ff7c Mon Sep 17 00:00:00 2001
From 6420147c00011f92af85e62463d3a88048b96d32 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 7d5e2635..a0dd9be6 100644
index d92a66d9..fedf6e99 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
@@ -114,6 +114,16 @@ public class ProtocolConstants
@@ -115,6 +115,16 @@ public class ProtocolConstants
SUPPORTED_VERSION_IDS = supportedVersionIds.build();
}

View File

@ -1,4 +1,4 @@
From 8c8b25883c768d798456d7289d057275d790b677 Mon Sep 17 00:00:00 2001
From eb1f1b27dbbd6f6831b35c21ecfb2cfe4a675da1 Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@techcable.net>
Date: Tue, 3 May 2016 20:31:52 -0700
Subject: [PATCH] Don't access a ByteBuf's underlying array
@ -43,10 +43,10 @@ index 70b292f0..91f71c09 100644
* Allow this packet to be sent as an "extended" packet.
*/
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 409464d2..76db3a71 100644
index 5ca53d81..4f1011b9 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -265,7 +265,7 @@ public class ServerConnector extends PacketHandler
@@ -266,7 +266,7 @@ public class ServerConnector extends PacketHandler
ByteBuf brand = ByteBufAllocator.DEFAULT.heapBuffer();
DefinedPacket.writeString( bungee.getName() + " (" + bungee.getVersion() + ")", brand );
@ -56,7 +56,7 @@ index 409464d2..76db3a71 100644
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
index 117ebb76..b8248ec4 100644
index 8f955fdc..3ff8e553 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
@@ -300,7 +300,7 @@ public class DownstreamBridge extends PacketHandler

View File

@ -1,4 +1,4 @@
From f2c91fe1c64c1b9d468063c57165a808be7235e1 Mon Sep 17 00:00:00 2001
From 1668e9e6e23ce2d43df05c7d496cdd086cadd4b9 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
@ -237,7 +237,7 @@ index 6352951c..91efc0a6 100644
/**
diff --git a/api/src/main/java/net/md_5/bungee/api/ServerPing.java b/api/src/main/java/net/md_5/bungee/api/ServerPing.java
index 88d36ad2..fc92a7b5 100644
index e582808f..29cd91dd 100644
--- a/api/src/main/java/net/md_5/bungee/api/ServerPing.java
+++ b/api/src/main/java/net/md_5/bungee/api/ServerPing.java
@@ -74,7 +74,7 @@ public class ServerPing
@ -250,10 +250,10 @@ index 88d36ad2..fc92a7b5 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 09080f36..14a34f99 100644
index 0bcbc8fb..6562a641 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
@@ -722,7 +722,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -718,7 +718,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@Override
public String getUUID()
{

View File

@ -1,4 +1,4 @@
From 0a7710b54fbc938b1913070090ebeb7b6e3bdd5f Mon Sep 17 00:00:00 2001
From d8cc33712c4b60c77f3a9c793f90c85a9a9f2d74 Mon Sep 17 00:00:00 2001
From: Daniel Naylor <git@drnaylor.co.uk>
Date: Tue, 25 Oct 2016 12:23:07 -0400
Subject: [PATCH] Add support for FML with IP Forwarding enabled
@ -12,7 +12,7 @@ However, there is now at least one Forge coremod that intends to support IP forw
No breaking changes occur due to this patch.
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 76db3a71..3aacebe1 100644
index 4f1011b9..8a57c5a8 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -7,6 +7,7 @@ import io.netty.buffer.ByteBufAllocator;
@ -23,7 +23,7 @@ index 76db3a71..3aacebe1 100644
import java.util.Queue;
import java.util.Set;
import java.util.UUID;
@@ -109,15 +110,39 @@ public class ServerConnector extends PacketHandler
@@ -110,15 +111,39 @@ public class ServerConnector extends PacketHandler
String newHost = copiedHandshake.getHost() + "\00" + AddressUtil.sanitizeAddress( user.getAddress() ) + "\00" + user.getUUID();
LoginResult profile = user.getPendingConnection().getLoginProfile();
@ -67,7 +67,7 @@ index 76db3a71..3aacebe1 100644
}
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 be65c3ad..6ca259cb 100644
index 18b1690d..db103d32 100644
--- a/proxy/src/main/java/net/md_5/bungee/UserConnection.java
+++ b/proxy/src/main/java/net/md_5/bungee/UserConnection.java
@@ -170,8 +170,12 @@ public final class UserConnection implements ProxiedPlayer

View File

@ -1,4 +1,4 @@
From ff46baa5671121531007c00dc684dc035a16dd8c Mon Sep 17 00:00:00 2001
From dde015048a91f44a859189f590147b9244de3f80 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
@ -9,7 +9,7 @@ Vanilla servers still error on negative/invalid packets.
Original issue: https://github.com/WaterfallMC/Waterfall-Old/issues/11
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 482341ef..76a3ddd0 100644
index d79d5e5c..250e7620 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
@@ -18,6 +18,14 @@ public class MinecraftDecoder extends MessageToMessageDecoder<ByteBuf>
@ -35,12 +35,12 @@ index 482341ef..76a3ddd0 100644
+ DefinedPacket packet = prot.createPacket( packetId, protocolVersion, supportsForge );
if ( packet != null )
{
packet.read( in, prot.getDirection(), protocolVersion );
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 b6985fee..7f001b11 100644
index 2eeca50b..9bd62ceb 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
@@ -749,14 +749,23 @@ public enum Protocol
@@ -751,14 +751,23 @@ public enum Protocol
return protocol;
}
@ -66,10 +66,10 @@ index b6985fee..7f001b11 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 3aacebe1..a5c8de90 100644
index 8a57c5a8..b856647f 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -34,7 +34,9 @@ import net.md_5.bungee.forge.ForgeUtils;
@@ -35,7 +35,9 @@ import net.md_5.bungee.forge.ForgeUtils;
import net.md_5.bungee.netty.ChannelWrapper;
import net.md_5.bungee.netty.HandlerBoss;
import net.md_5.bungee.netty.PacketHandler;
@ -79,7 +79,7 @@ index 3aacebe1..a5c8de90 100644
import net.md_5.bungee.protocol.PacketWrapper;
import net.md_5.bungee.protocol.Protocol;
import net.md_5.bungee.protocol.ProtocolConstants;
@@ -222,6 +224,12 @@ public class ServerConnector extends PacketHandler
@@ -223,6 +225,12 @@ public class ServerConnector extends PacketHandler
public static void handleLogin(ProxyServer bungee, ChannelWrapper ch, UserConnection user, BungeeServerInfo target, ForgeServerHandler handshakeHandler, ServerConnection server, Login login) throws Exception
{
ServerConnectedEvent event = new ServerConnectedEvent( user, server );
@ -93,10 +93,10 @@ index 3aacebe1..a5c8de90 100644
ch.write( BungeeCord.getInstance().registerChannels( user.getPendingConnection().getVersion() ) );
diff --git a/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java b/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java
index 30cc36a4..c033118f 100644
index 9a47f2ec..b768d54a 100644
--- a/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java
+++ b/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java
@@ -338,6 +338,12 @@ public abstract class EntityMap
@@ -340,6 +340,12 @@ public abstract class EntityMap
int packetId = DefinedPacket.readVarInt( packet );
int packetIdLength = packet.readerIndex() - readerIndex;

View File

@ -1,4 +1,4 @@
From e8ea9698ec9af3d3ccc6be444b8a604aae29041a Mon Sep 17 00:00:00 2001
From 74fc5e424568249619d3e514a21a7574978435e1 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,10 +7,10 @@ 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 a5c8de90..59403052 100644
index b856647f..7f1992df 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -499,6 +499,6 @@ public class ServerConnector extends PacketHandler
@@ -503,6 +503,6 @@ public class ServerConnector extends PacketHandler
@Override
public String toString()
{
@ -19,10 +19,10 @@ index a5c8de90..59403052 100644
}
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
index 23e7b6d8..88b0156c 100644
index cee4c235..6c545f4c 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
@@ -774,6 +774,6 @@ public class DownstreamBridge extends PacketHandler
@@ -777,6 +777,6 @@ public class DownstreamBridge extends PacketHandler
@Override
public String toString()
{
@ -31,10 +31,10 @@ index 23e7b6d8..88b0156c 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 14a34f99..7e2d0c63 100644
index 6562a641..9a6a305b 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
@@ -728,20 +728,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -724,20 +724,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@Override
public String toString()
{

View File

@ -1,4 +1,4 @@
From 1b52a13e4834482bb8b9daa3e54556fc2e612668 Mon Sep 17 00:00:00 2001
From 3cebec2175678a2c7351368beffa2b8e09fb4025 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 7e2d0c63..9fd951be 100644
index 9a6a305b..300d90f4 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
@@ -301,10 +301,14 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -300,10 +300,14 @@ public class InitialHandler extends PacketHandler implements PendingConnection
thisState = State.PING;
}

View File

@ -1,4 +1,4 @@
From e5c22d17359ad3da880b5ae4d656b707ad0f73d3 Mon Sep 17 00:00:00 2001
From 6811ade86ab79cff19ddbdd895abab13d3863f09 Mon Sep 17 00:00:00 2001
From: Nathan Poirier <nathan@poirier.io>
Date: Tue, 28 Jun 2016 23:00:49 -0500
Subject: [PATCH] Improve ServerKickEvent
@ -6,7 +6,7 @@ Subject: [PATCH] Improve ServerKickEvent
ServerKickEvent traditionally will only fire if the server sends a kick packet. During a server shutdown, or server crash this event would not fire for most players. While ServerDisconnectEvent is fired it does not tell us if it was a kick/shutdown/server crash. This improvement fires the ServerKickEvent for server caused disconnections, and adds a Cause to the kick event.
diff --git a/api/src/main/java/net/md_5/bungee/api/event/ServerKickEvent.java b/api/src/main/java/net/md_5/bungee/api/event/ServerKickEvent.java
index 0e1ef5c4..ee63732d 100644
index 3f9efaa8..5d2597ad 100644
--- a/api/src/main/java/net/md_5/bungee/api/event/ServerKickEvent.java
+++ b/api/src/main/java/net/md_5/bungee/api/event/ServerKickEvent.java
@@ -44,6 +44,12 @@ public class ServerKickEvent extends Event implements Cancellable
@ -22,14 +22,13 @@ index 0e1ef5c4..ee63732d 100644
public enum State
{
@@ -51,6 +57,14 @@ public class ServerKickEvent extends Event implements Cancellable
@@ -51,6 +57,13 @@ public class ServerKickEvent extends Event implements Cancellable
CONNECTING, CONNECTED, UNKNOWN;
}
+ // Waterfall start
+ public enum Cause
+ {
+
+ SERVER, LOST_CONNECTION, EXCEPTION, UNKNOWN;
+ }
+ // Waterfall end
@ -37,45 +36,52 @@ index 0e1ef5c4..ee63732d 100644
@Deprecated
public ServerKickEvent(ProxiedPlayer player, BaseComponent[] kickReasonComponent, ServerInfo cancelServer)
{
@@ -63,14 +77,23 @@ public class ServerKickEvent extends Event implements Cancellable
this( player, player.getServer().getInfo(), kickReasonComponent, cancelServer, state );
@@ -69,14 +82,29 @@ public class ServerKickEvent extends Event implements Cancellable
this( player, kickedFrom, TextComponent.fromArray( kickReasonComponent ), cancelServer, state );
}
- public ServerKickEvent(ProxiedPlayer player, ServerInfo kickedFrom, BaseComponent reason, ServerInfo cancelServer, State state)
+ // Waterfall start
+
+ @Deprecated
public ServerKickEvent(ProxiedPlayer player, ServerInfo kickedFrom, BaseComponent[] kickReasonComponent, ServerInfo cancelServer, State state)
+ public ServerKickEvent(ProxiedPlayer player, ServerInfo kickedFrom, BaseComponent kickReasonComponent, ServerInfo cancelServer, State state)
+ {
+ this( player, kickedFrom, kickReasonComponent, cancelServer, state, Cause.UNKNOWN );
+ this(player, kickedFrom, kickReasonComponent, cancelServer, state, Cause.UNKNOWN);
+ }
+
+ public ServerKickEvent(ProxiedPlayer player, ServerInfo kickedFrom, BaseComponent[] kickReasonComponent, ServerInfo cancelServer, State state, Cause cause)
+ public ServerKickEvent(ProxiedPlayer player, ServerInfo kickedFrom, BaseComponent[] reason, ServerInfo cancelServer, State state, Cause cause)
+ {
+ this(player, kickedFrom, TextComponent.fromArray(reason), cancelServer, state, cause);
+ }
+
+ public ServerKickEvent(ProxiedPlayer player, ServerInfo kickedFrom, BaseComponent reason, ServerInfo cancelServer, State state, Cause cause)
{
this.player = player;
this.kickedFrom = kickedFrom;
this.kickReasonComponent = kickReasonComponent;
this.reason = reason;
this.cancelServer = cancelServer;
this.state = state;
+ this.cause = cause;
}
+ // Waterfall end
@Deprecated
public String getKickReason()
/**
* @return the kick reason
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 59403052..f981313e 100644
index 7f1992df..fd1f9266 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -416,7 +416,7 @@ public class ServerConnector extends PacketHandler
public void handle(Kick kick) throws Exception
{
ServerInfo def = user.updateAndGetNextServer( target );
- ServerKickEvent event = new ServerKickEvent( user, target, ComponentSerializer.parse( kick.getMessage() ), def, ServerKickEvent.State.CONNECTING );
+ ServerKickEvent event = new ServerKickEvent( user, target, ComponentSerializer.parse( kick.getMessage() ), def, ServerKickEvent.State.CONNECTING, ServerKickEvent.Cause.SERVER ); // Waterfall
@@ -420,7 +420,7 @@ public class ServerConnector extends PacketHandler
ServerKickEvent event = new ServerKickEvent( user, target, new BaseComponent[]
{
kick.getMessage()
- }, def, ServerKickEvent.State.CONNECTING );
+ }, def, ServerKickEvent.State.CONNECTING, ServerKickEvent.Cause.SERVER ); // Waterfall );
if ( event.getKickReason().toLowerCase( Locale.ROOT ).contains( "outdated" ) && def != null )
{
// Pre cancel the event if we are going to try another server
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
index 88b0156c..30fbb0b1 100644
index 6c545f4c..f461c096 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
@@ -97,16 +97,19 @@ public class DownstreamBridge extends PacketHandler
@ -97,7 +103,7 @@ index 88b0156c..30fbb0b1 100644
+ else
{
- con.disconnect( Util.exception( t ) );
+ con.disconnect0( event.getKickReasonComponent() );
+ con.disconnect0( event.getReason() );
}
+ // Waterfall end
}
@ -118,22 +124,25 @@ index 88b0156c..30fbb0b1 100644
+ }
+ else
+ {
+ con.disconnect0( event.getKickReasonComponent() );
+ con.disconnect0( event.getReason() );
+ }
+ // Waterfall end
}
ServerDisconnectEvent serverDisconnectEvent = new ServerDisconnectEvent( con, server.getInfo() );
@@ -620,7 +635,11 @@ public class DownstreamBridge extends PacketHandler
@@ -620,10 +635,14 @@ public class DownstreamBridge extends PacketHandler
public void handle(Kick kick) throws Exception
{
ServerInfo def = con.updateAndGetNextServer( server.getInfo() );
- ServerKickEvent event = bungee.getPluginManager().callEvent( new ServerKickEvent( con, server.getInfo(), ComponentSerializer.parse( kick.getMessage() ), def, ServerKickEvent.State.CONNECTED ) );
+ if ( java.util.Objects.equals( server.getInfo(), def ) )
+ {
+ def = null;
+ }
+ ServerKickEvent event = bungee.getPluginManager().callEvent( new ServerKickEvent( con, server.getInfo(), ComponentSerializer.parse( kick.getMessage() ), def, ServerKickEvent.State.CONNECTED, ServerKickEvent.Cause.SERVER ) ); // Waterfall
ServerKickEvent event = bungee.getPluginManager().callEvent( new ServerKickEvent( con, server.getInfo(), new BaseComponent[]
{
kick.getMessage()
- }, def, ServerKickEvent.State.CONNECTED ) );
+ }, def, ServerKickEvent.State.CONNECTED, ServerKickEvent.Cause.SERVER ) ); // Waterfall
if ( event.isCancelled() && event.getCancelServer() != null )
{
con.connectNow( event.getCancelServer(), ServerConnectEvent.Reason.KICK_REDIRECT );

View File

@ -1,11 +1,11 @@
From d7ca4dd7a639155cacd0315119bf643584cf2da8 Mon Sep 17 00:00:00 2001
From 05898ba911116042aadf6c154f4f6c39b3234b36 Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@techcable.net>
Date: Thu, 4 Aug 2016 19:30:49 -0700
Subject: [PATCH] Dump the raw hex of a packet on a decoding error
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 76a3ddd0..2aeca781 100644
index 250e7620..2207c3ff 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
@@ -1,7 +1,9 @@
@ -32,7 +32,7 @@ index 76a3ddd0..2aeca781 100644
if ( packet != null )
{
+ packetTypeInfo = packet.getClass();
packet.read( in, prot.getDirection(), protocolVersion );
packet.read( in, protocol, prot.getDirection(), protocolVersion );
if ( in.isReadable() )
@@ -60,6 +65,16 @@ public class MinecraftDecoder extends MessageToMessageDecoder<ByteBuf>

View File

@ -1,4 +1,4 @@
From d977b482d4497a46228913b145913aff3efe66df Mon Sep 17 00:00:00 2001
From 8eea3ccfded59af6e76549d279cf0def408a10ba Mon Sep 17 00:00:00 2001
From: Aaron Hill <aa1ronham@gmail.com>
Date: Thu, 15 Sep 2016 22:38:37 +0200
Subject: [PATCH] Fix potion race condition on Forge 1.8.9
@ -117,7 +117,7 @@ index 00000000..7ed2dc3a
+ }
+}
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 242b693e..4d9db4de 100644
index 7a62088d..cff35a06 100644
--- a/proxy/src/main/java/net/md_5/bungee/UserConnection.java
+++ b/proxy/src/main/java/net/md_5/bungee/UserConnection.java
@@ -1,7 +1,9 @@
@ -142,10 +142,10 @@ index 242b693e..4d9db4de 100644
@Setter
private String lastCommandTabbed;
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
index 30fbb0b1..c412bbab 100644
index f461c096..80275a15 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
@@ -737,6 +737,32 @@ public class DownstreamBridge extends PacketHandler
@@ -740,6 +740,32 @@ public class DownstreamBridge extends PacketHandler
}
}

View File

@ -1,14 +1,14 @@
From 43c06de639e73d67cd03f36d12a406236ba8fec4 Mon Sep 17 00:00:00 2001
From d0f2a03e3eae67f9385a46706668c87fc327af94 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
diff --git a/api/src/main/java/net/md_5/bungee/api/event/LoginEvent.java b/api/src/main/java/net/md_5/bungee/api/event/LoginEvent.java
index fa507753..a13eba79 100644
index 4c09efff..46517e03 100644
--- a/api/src/main/java/net/md_5/bungee/api/event/LoginEvent.java
+++ b/api/src/main/java/net/md_5/bungee/api/event/LoginEvent.java
@@ -10,6 +10,7 @@ import net.md_5.bungee.api.chat.BaseComponent;
@@ -8,6 +8,7 @@ import net.md_5.bungee.api.chat.BaseComponent;
import net.md_5.bungee.api.chat.TextComponent;
import net.md_5.bungee.api.connection.PendingConnection;
import net.md_5.bungee.api.plugin.Cancellable;
@ -16,11 +16,10 @@ index fa507753..a13eba79 100644
/**
* Event called to represent a player logging in.
@@ -29,6 +30,14 @@ public class LoginEvent extends AsyncEvent<LoginEvent> implements Cancellable
@@ -26,6 +27,13 @@ public class LoginEvent extends AsyncEvent<LoginEvent> implements Cancellable
* Message to use when kicking if this event is canceled.
*/
@Setter(AccessLevel.NONE)
private BaseComponent[] cancelReasonComponents;
+
private BaseComponent reason;
+ // Waterfall start - adding the LoginResult variable to provide access to it, when calling the login event
+ /**
+ * The player's login result containing his textures
@ -31,7 +30,7 @@ index fa507753..a13eba79 100644
/**
* Connection attempting to login.
*/
@@ -40,6 +49,15 @@ public class LoginEvent extends AsyncEvent<LoginEvent> implements Cancellable
@@ -37,6 +45,15 @@ public class LoginEvent extends AsyncEvent<LoginEvent> implements Cancellable
this.connection = connection;
}
@ -46,16 +45,16 @@ index fa507753..a13eba79 100644
+
/**
* @return reason to be displayed
* @deprecated Use component methods instead.
* @deprecated use component methods instead
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/LoginResult.java b/api/src/main/java/net/md_5/bungee/connection/LoginResult.java
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 9fd951be..488eff1d 100644
index 300d90f4..ecaab6bd 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
@@ -614,7 +614,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -613,7 +613,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
};
// fire login event

View File

@ -1,4 +1,4 @@
From d139603bfda2a1fa02f3b5d53f2588d95052fe50 Mon Sep 17 00:00:00 2001
From ec92b7e4e5831157c23f3c2a9e721e8783d165aa 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 488eff1d..0dfc1413 100644
index ecaab6bd..ae3c6a42 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
@@ -356,7 +356,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -355,7 +355,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
break;
case 2:
// Login

View File

@ -1,4 +1,4 @@
From dcf0afc9f522988e7e2cc1b797274130993d1b37 Mon Sep 17 00:00:00 2001
From 4dee99b416b0e892080cc906e2d075af6bfcf815 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,10 +57,10 @@ 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 f981313e..8f0bacd4 100644
index fd1f9266..1f30a5cb 100644
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
@@ -254,7 +254,8 @@ public class ServerConnector extends PacketHandler
@@ -255,7 +255,8 @@ public class ServerConnector extends PacketHandler
ch.write( new PluginMessage( user.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_13 ? "minecraft:register" : "REGISTER", Joiner.on( "\0" ).join( registeredChannels ).getBytes( StandardCharsets.UTF_8 ), false ) );
}
@ -70,15 +70,15 @@ index f981313e..8f0bacd4 100644
{
ch.write( user.getSettings() );
}
@@ -309,6 +310,7 @@ public class ServerConnector extends PacketHandler
@@ -310,6 +311,7 @@ public class ServerConnector extends PacketHandler
user.getTabListHandler().onServerChange();
Scoreboard serverScoreboard = user.getServerSentScoreboard();
+ if ( !user.isDisableEntityMetadataRewrite() ) { // Waterfall
for ( Objective objective : serverScoreboard.getObjectives() )
{
user.unsafe().sendPacket( new ScoreboardObjective( objective.getName(), objective.getValue(), ScoreboardObjective.HealthDisplay.fromString( objective.getType() ), (byte) 1 ) );
@@ -321,6 +323,7 @@ public class ServerConnector extends PacketHandler
user.unsafe().sendPacket( new ScoreboardObjective( objective.getName(), ComponentSerializer.deserialize( objective.getValue() ), ScoreboardObjective.HealthDisplay.fromString( objective.getType() ), (byte) 1 ) );
@@ -322,6 +324,7 @@ public class ServerConnector extends PacketHandler
{
user.unsafe().sendPacket( new net.md_5.bungee.protocol.packet.Team( team.getName() ) );
}
@ -86,7 +86,7 @@ index f981313e..8f0bacd4 100644
serverScoreboard.clear();
for ( UUID bossbar : user.getSentBossBars() )
@@ -339,13 +342,34 @@ public class ServerConnector extends PacketHandler
@@ -340,13 +343,34 @@ public class ServerConnector extends PacketHandler
}
user.setDimensionChange( true );
@ -123,10 +123,10 @@ index f981313e..8f0bacd4 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 85adab0f..9e2046a4 100644
index cff35a06..4617fc2c 100644
--- a/proxy/src/main/java/net/md_5/bungee/UserConnection.java
+++ b/proxy/src/main/java/net/md_5/bungee/UserConnection.java
@@ -801,4 +801,10 @@ public final class UserConnection implements ProxiedPlayer
@@ -790,4 +790,10 @@ public final class UserConnection implements ProxiedPlayer
{
return serverSentScoreboard;
}
@ -138,10 +138,10 @@ index 85adab0f..9e2046a4 100644
+ // Waterfall end
}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
index c412bbab..5966469b 100644
index 80275a15..bc808b2c 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
@@ -741,6 +741,7 @@ public class DownstreamBridge extends PacketHandler
@@ -744,6 +744,7 @@ public class DownstreamBridge extends PacketHandler
@Override
public void handle(net.md_5.bungee.protocol.packet.EntityEffect entityEffect) throws Exception
{
@ -149,7 +149,7 @@ index c412bbab..5966469b 100644
// Don't send any potions when switching between servers (which involves a handshake), which can trigger a race
// condition on the client.
if (this.con.getForgeClientHandler().isForgeUser() && !this.con.getForgeClientHandler().isHandshakeComplete()) {
@@ -752,6 +753,7 @@ public class DownstreamBridge extends PacketHandler
@@ -755,6 +756,7 @@ public class DownstreamBridge extends PacketHandler
@Override
public void handle(net.md_5.bungee.protocol.packet.EntityRemoveEffect removeEffect) throws Exception
{
@ -158,7 +158,7 @@ index c412bbab..5966469b 100644
}
diff --git a/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java b/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java
index c033118f..69accd42 100644
index b768d54a..e22e956d 100644
--- a/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java
+++ b/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap.java
@@ -27,6 +27,11 @@ public abstract class EntityMap
@ -173,7 +173,7 @@ index c033118f..69accd42 100644
switch ( version )
{
case ProtocolConstants.MINECRAFT_1_8:
@@ -300,7 +305,13 @@ public abstract class EntityMap
@@ -302,7 +307,13 @@ public abstract class EntityMap
DefinedPacket.readVarInt( packet );
break;
default:
@ -226,5 +226,5 @@ index 00000000..cb81d1dd
+// Waterfall end
\ No newline at end of file
--
2.34.1
2.42.0

View File

@ -1,4 +1,4 @@
From 48553841b229f3e21ce0363be925f17657d4b8ef Mon Sep 17 00:00:00 2001
From 0b970cb79fd1c2ecf5eee883f54b691554543a48 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Thu, 14 Mar 2019 07:44:06 +0000
Subject: [PATCH] Add ProxyDefineCommandsEvent
@ -54,10 +54,10 @@ index 00000000..1fd4fc90
+
+}
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
index a2995c60..e05e746c 100644
index bc808b2c..2e427335 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/DownstreamBridge.java
@@ -776,9 +776,25 @@ public class DownstreamBridge extends PacketHandler
@@ -779,9 +779,25 @@ public class DownstreamBridge extends PacketHandler
{
boolean modified = false;

View File

@ -1,4 +1,4 @@
From 94e538b0a962da3d0d293ecafad4f7e99d257d1e Mon Sep 17 00:00:00 2001
From 6c4e6163dc6950c6ee33c07dd5a82d5ba033b08d 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
@ -67,10 +67,10 @@ index 6c0ef4df..f20104a2 100644
+ // Waterfall end
}
diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/DefinedPacket.java b/protocol/src/main/java/net/md_5/bungee/protocol/DefinedPacket.java
index c1017e60..5ecb5c93 100644
index 2959d8c0..3376154d 100644
--- a/protocol/src/main/java/net/md_5/bungee/protocol/DefinedPacket.java
+++ b/protocol/src/main/java/net/md_5/bungee/protocol/DefinedPacket.java
@@ -24,6 +24,9 @@ import se.llbit.nbt.Tag;
@@ -27,6 +27,9 @@ import se.llbit.nbt.Tag;
public abstract class DefinedPacket
{
@ -80,7 +80,7 @@ index c1017e60..5ecb5c93 100644
public static void writeString(String s, ByteBuf buf)
{
writeString( s, buf, Short.MAX_VALUE );
@@ -150,13 +153,18 @@ public abstract class DefinedPacket
@@ -185,13 +188,18 @@ public abstract class DefinedPacket
byte in;
while ( true )
{
@ -133,7 +133,7 @@ index 00000000..2583aa2c
+ }
+}
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 5f4ec289..3d806129 100644
index 655bcd46..52f76cd9 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
@@ -80,7 +80,7 @@ public class MinecraftDecoder extends MessageToMessageDecoder<ByteBuf>
@ -146,7 +146,7 @@ index 5f4ec289..3d806129 100644
{
if ( slice != null )
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 0dfc1413..d7c29eb8 100644
index ae3c6a42..690a5c45 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
@@ -16,6 +16,8 @@ import java.util.Set;
@ -158,7 +158,7 @@ index 0dfc1413..d7c29eb8 100644
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import net.md_5.bungee.BungeeCord;
@@ -472,6 +474,14 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -471,6 +473,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,14 +1,14 @@
From 30d3802d87f843f01a3b02e53d4ca306abe11d42 Mon Sep 17 00:00:00 2001
From 9f584ae89fe04e5f5ef05a0273d48f42ea99609c 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 d7c29eb8..f0346fc6 100644
index 690a5c45..73aa532e 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
@@ -76,6 +76,8 @@ import net.md_5.bungee.util.QuietException;
@@ -75,6 +75,8 @@ import net.md_5.bungee.util.QuietException;
public class InitialHandler extends PacketHandler implements PendingConnection
{
@ -17,7 +17,7 @@ index d7c29eb8..f0346fc6 100644
private final BungeeCord bungee;
private ChannelWrapper ch;
@Getter
@@ -500,7 +502,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -499,7 +501,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 4860294f602b59bfd8013200d242ded589641a8b Mon Sep 17 00:00:00 2001
From 20f95e2da6c84fd4eae251d4562418238937e7f7 Mon Sep 17 00:00:00 2001
From: "Five (Xer)" <admin@fivepb.me>
Date: Sat, 30 Jan 2021 18:04:14 +0100
Subject: [PATCH] Additional DoS mitigations
@ -8,10 +8,10 @@ Courtesy of Tux and the Velocity Contributors. See:
https://github.com/VelocityPowered/Velocity/commit/5ceac16a821ea35572ff11412ace8929fd06e278
diff --git a/protocol/src/main/java/net/md_5/bungee/protocol/DefinedPacket.java b/protocol/src/main/java/net/md_5/bungee/protocol/DefinedPacket.java
index 5ecb5c93..70ec6c53 100644
index 3376154d..d3c66f68 100644
--- a/protocol/src/main/java/net/md_5/bungee/protocol/DefinedPacket.java
+++ b/protocol/src/main/java/net/md_5/bungee/protocol/DefinedPacket.java
@@ -59,6 +59,7 @@ public abstract class DefinedPacket
@@ -62,6 +62,7 @@ public abstract class DefinedPacket
int len = readVarInt( buf );
if ( len > maxLen * 3 )
{
@ -19,7 +19,7 @@ index 5ecb5c93..70ec6c53 100644
throw new OverflowPacketException( "Cannot receive string longer than " + maxLen * 3 + " (got " + len + " bytes)" );
}
@@ -67,6 +68,7 @@ public abstract class DefinedPacket
@@ -70,6 +71,7 @@ public abstract class DefinedPacket
if ( s.length() > maxLen )
{
@ -27,7 +27,7 @@ index 5ecb5c93..70ec6c53 100644
throw new OverflowPacketException( "Cannot receive string longer than " + maxLen + " (got " + s.length() + " characters)" );
}
@@ -424,4 +426,21 @@ public abstract class DefinedPacket
@@ -478,4 +480,21 @@ public abstract class DefinedPacket
@Override
public abstract String toString();
@ -50,7 +50,7 @@ index 5ecb5c93..70ec6c53 100644
+ // Waterfall end
}
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 3d806129..636ecc6d 100644
index 52f76cd9..636ecc6d 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
@@ -3,7 +3,7 @@ package net.md_5.bungee.protocol;
@ -66,8 +66,9 @@ index 3d806129..636ecc6d 100644
if ( packet != null )
{
packetTypeInfo = packet.getClass();
- packet.read( in, protocol, prot.getDirection(), protocolVersion );
+ doLengthSanityChecks(in, packet, prot.getDirection(), packetId); // Waterfall: Additional DoS mitigations
packet.read( in, prot.getDirection(), protocolVersion );
+ packet.read( in, prot.getDirection(), protocolVersion );
if ( in.isReadable() )
{

View File

@ -1,4 +1,4 @@
From a824f915466921ca6b97c768ca373342a1f184a0 Mon Sep 17 00:00:00 2001
From d4a6ec0de8dc598da0bf5e8025112f62a4c5a26a 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 f0346fc6..f067cfcf 100644
index 73aa532e..40ed5ab0 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
@@ -764,9 +764,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -760,9 +760,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
for ( String id : content.split( "\0" ) )
{

View File

@ -1,14 +1,14 @@
From 1a92c1c479b57073a5ba98af31966b93af7b2f50 Mon Sep 17 00:00:00 2001
From 9a2cd7e0aef6a7d27f8454e692838944aa5f892a 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 f067cfcf..baa5a58e 100644
index 40ed5ab0..3000d753 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
@@ -474,6 +474,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -473,6 +473,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 f067cfcf..baa5a58e 100644
SecretKey sharedKey = EncryptionUtil.getSecret( encryptResponse, request );
// Waterfall start
@@ -528,7 +529,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -527,7 +528,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
}
}
};

View File

@ -1,4 +1,4 @@
From 7223638cd14c46a10da24716d163b72c129110ce Mon Sep 17 00:00:00 2001
From ce0afd13c32c6d7bc814b4727d465b5b579df1be 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 7f001b11..82bfc51b 100644
index 9bd62ceb..e1238e4c 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 7f001b11..82bfc51b 100644
import gnu.trove.map.TIntObjectMap;
import gnu.trove.map.TObjectIntMap;
import gnu.trove.map.hash.TIntObjectHashMap;
@@ -830,9 +832,12 @@ public enum Protocol
@@ -832,9 +834,12 @@ public enum Protocol
{
throw new BadPacketException( "Unsupported protocol version" );
}

View File

@ -1,4 +1,4 @@
From 9c8d002cc916c5821eef456bace829fc76d2e1d1 Mon Sep 17 00:00:00 2001
From cba37fa379053290219c8194dfe9f8da0937fdf8 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 baa5a58e..c3f5db1a 100644
index 3000d753..4114b4fd 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
@@ -397,6 +397,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -396,6 +396,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 92b7609dd85a8eb3d8f300a34f8355eb5f1e1c3c Mon Sep 17 00:00:00 2001
From 7863030ffbcdd91ce95a9467b3cbfafab7f3e328 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 c3f5db1a..98b78de2 100644
index 4114b4fd..3e41796e 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
@@ -164,7 +164,17 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@@ -163,7 +163,17 @@ public class InitialHandler extends PacketHandler implements PendingConnection
@Override
public void handle(PluginMessage pluginMessage) throws Exception
{

View File

@ -1,4 +1,4 @@
From 3b0394a5ae63b13ae0eb5bc03ac224c6052cb37d Mon Sep 17 00:00:00 2001
From c89ee9ef58e78c17ce1ecdfb29d7fac311cfc361 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
@ -19,10 +19,10 @@ index b3c8c6e2..1eaebc2e 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 82bfc51b..623d817f 100644
index e1238e4c..d815864b 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
@@ -476,6 +476,13 @@ public enum Protocol
@@ -477,6 +477,13 @@ public enum Protocol
map( ProtocolConstants.MINECRAFT_1_19, 0x04 ),
map( ProtocolConstants.MINECRAFT_1_19_1, 0x05 )
);
@ -90,7 +90,7 @@ index 887ff29f..d4700090 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 d7c3b871..b3422cc3 100644
index b9d250d9..05d3a62a 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
@@ -195,10 +195,15 @@ public class UpstreamBridge extends PacketHandler
@ -125,5 +125,5 @@ index d7c3b871..b3422cc3 100644
}
throw CancelSendSignal.INSTANCE;
--
2.39.3 (Apple Git-145)
2.42.0