mirror of
https://github.com/PaperMC/Waterfall.git
synced 2024-11-18 16:25:14 +01:00
rebuild patches
This commit is contained in:
parent
5b8548ce64
commit
213e226efd
@ -1,14 +1,14 @@
|
||||
From cdf91cda29d5b69410c130012de20dba5d7da506 Mon Sep 17 00:00:00 2001
|
||||
From f1b1c7e6c185bc7a13cf6125dc2672b9a53e12e1 Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:06:17 +0800
|
||||
Subject: [PATCH] Close connections & Don't flush if not necessary
|
||||
|
||||
|
||||
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 5407c20a..e9937428 100644
|
||||
index 49ba34db..6e148782 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
|
||||
@@ -194,6 +194,13 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -192,6 +192,13 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
}
|
||||
|
||||
ServerPing legacy = result.getResponse();
|
||||
@ -22,11 +22,10 @@ index 5407c20a..e9937428 100644
|
||||
String kickMessage;
|
||||
|
||||
if ( v1_5 )
|
||||
@@ -264,6 +271,16 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -257,6 +264,15 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@Override
|
||||
public void done(ProxyPingEvent pingResult, Throwable error)
|
||||
{
|
||||
bungee.getConnectionThrottle().unthrottle( getSocketAddress() );
|
||||
}
|
||||
+
|
||||
+ // FlameCord - Close if response is null
|
||||
+ // FlameCord - Return if connection is closed
|
||||
+ if (pingResult.getResponse() == null) {
|
||||
@ -36,10 +35,10 @@ index 5407c20a..e9937428 100644
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
// FlameCord start
|
||||
if ( ProtocolConstants.isBeforeOrEq( handshake.getProtocolVersion() , ProtocolConstants.MINECRAFT_1_8 ) )
|
||||
{
|
||||
@@ -304,11 +321,11 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
Gson gson = BungeeCord.getInstance().gson;
|
||||
unsafe.sendPacket( new StatusResponse( gson.toJson( pingResult.getResponse() ) ) );
|
||||
if ( bungee.getConnectionThrottle() != null )
|
||||
@@ -286,11 +302,13 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@Override
|
||||
public void handle(PingPacket ping) throws Exception
|
||||
{
|
||||
@ -48,14 +47,16 @@ index 5407c20a..e9937428 100644
|
||||
- }
|
||||
+ // FlameCord - Never accept invalid packets
|
||||
+ Preconditions.checkState( thisState == State.PING, "Not expecting PING" );
|
||||
+
|
||||
unsafe.sendPacket( ping );
|
||||
- disconnect( "" );
|
||||
+
|
||||
+ // FlameCord - Close instead of disconnect
|
||||
+ ch.close();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -624,7 +641,8 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -606,7 +624,8 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
{
|
||||
if ( canSendKickMessage() )
|
||||
{
|
||||
@ -117,34 +118,8 @@ index 6dc5633f..5c05f2b9 100644
|
||||
ch.pipeline().addBefore( baseName, name, handler );
|
||||
}
|
||||
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
index 270545f2..b0825e51 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
@@ -56,7 +56,8 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
{
|
||||
if ( handler != null )
|
||||
{
|
||||
- channel.markClosed();
|
||||
+ // FlameCord - close instead of markClosed
|
||||
+ channel.close();
|
||||
handler.disconnected( channel );
|
||||
|
||||
if ( !( handler instanceof InitialHandler || handler instanceof PingHandler ) )
|
||||
@@ -186,8 +187,9 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
ProxyServer.getInstance().getLogger().log( Level.SEVERE, handler + " - exception processing exception", ex );
|
||||
}
|
||||
}
|
||||
-
|
||||
- ctx.close();
|
||||
}
|
||||
+
|
||||
+ // FlameCord - Close even if the channel isn't active
|
||||
+ ctx.close();
|
||||
}
|
||||
}
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
index 96704d5e..4996a7b4 100644
|
||||
index 96704d5e..654203ab 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
@@ -5,6 +5,7 @@ import io.github.waterfallmc.waterfall.event.ConnectionInitEvent;
|
||||
@ -170,6 +145,20 @@ index 96704d5e..4996a7b4 100644
|
||||
};
|
||||
public static final Base BASE = new Base();
|
||||
private static final KickStringWriter legacyKicker = new KickStringWriter();
|
||||
@@ -196,5 +205,13 @@ public class PipelineUtils
|
||||
|
||||
ch.pipeline().addLast( BOSS_HANDLER, new HandlerBoss() );
|
||||
}
|
||||
+
|
||||
+ // FlameCord - Close on exception caught
|
||||
+ @Override
|
||||
+ public void exceptionCaught(final ChannelHandlerContext ctx, final Throwable cause) throws Exception {
|
||||
+ cause.printStackTrace();
|
||||
+
|
||||
+ ctx.close();
|
||||
+ }
|
||||
}
|
||||
}
|
||||
diff --git a/query/src/main/java/net/md_5/bungee/query/QueryHandler.java b/query/src/main/java/net/md_5/bungee/query/QueryHandler.java
|
||||
index 0c1ecfb8..b3bdfd05 100644
|
||||
--- a/query/src/main/java/net/md_5/bungee/query/QueryHandler.java
|
||||
@ -184,5 +173,5 @@ index 0c1ecfb8..b3bdfd05 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,11 +1,11 @@
|
||||
From 8ead27c615cb3fcc53cabf3399c65347d4fd6994 Mon Sep 17 00:00:00 2001
|
||||
From f61307367e3fb2e33ef946df1b28973645f3eba8 Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:10:30 +0800
|
||||
Subject: [PATCH] Packet Checks
|
||||
|
||||
|
||||
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 2caadfed..d4729244 100644
|
||||
index 01d35f41..ec07ae6f 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
|
||||
@@ -38,6 +38,19 @@ public class MinecraftDecoder extends MessageToMessageDecoder<ByteBuf>
|
||||
@ -29,10 +29,10 @@ index 2caadfed..d4729244 100644
|
||||
|
||||
Object packetTypeInfo = null;
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
index 1351d5d5..d68cc2ce 100644
|
||||
index 270545f2..3bbc1510 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
@@ -79,6 +79,11 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
@@ -78,6 +78,11 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
@Override
|
||||
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception
|
||||
{
|
||||
@ -45,5 +45,5 @@ index 1351d5d5..d68cc2ce 100644
|
||||
{
|
||||
HAProxyMessage proxy = (HAProxyMessage) msg;
|
||||
--
|
||||
2.20.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,11 +1,11 @@
|
||||
From b8e427d68694e1af04e005b78f4c58e161c8ee35 Mon Sep 17 00:00:00 2001
|
||||
From 7ecd3743ff93e43b827419fd1705b75aa9cf2e8c Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:14:02 +0800
|
||||
Subject: [PATCH] Default timeout to 10000
|
||||
|
||||
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/conf/Configuration.java b/proxy/src/main/java/net/md_5/bungee/conf/Configuration.java
|
||||
index 85d2197a..1294495d 100644
|
||||
index 85d2197a..c41930ae 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/conf/Configuration.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/conf/Configuration.java
|
||||
@@ -35,7 +35,8 @@ public abstract class Configuration implements ProxyConfig
|
||||
@ -19,5 +19,5 @@ index 85d2197a..1294495d 100644
|
||||
* UUID used for metrics.
|
||||
*/
|
||||
--
|
||||
2.20.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 501c340474b980137994535738a1ac736b6d0e6a Mon Sep 17 00:00:00 2001
|
||||
From 19fd8591a6237ca960a1533236c4fd352a621a9d Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:25:03 +0800
|
||||
Subject: [PATCH] Change state to encrypt only if onlineMode is true
|
||||
|
||||
|
||||
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 e9937428..037a305b 100644
|
||||
index 6e148782..e23cf604 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
|
||||
@@ -449,11 +449,12 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -432,11 +432,12 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
if ( onlineMode )
|
||||
{
|
||||
unsafe().sendPacket( request = EncryptionUtil.encryptRequest() );
|
||||
@ -23,5 +23,5 @@ index e9937428..037a305b 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.20.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,157 +0,0 @@
|
||||
From 8483549f243a6d8aad3574fc2d6235c3326e2740 Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:07:26 +0800
|
||||
Subject: [PATCH] Use elseIfs
|
||||
|
||||
|
||||
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 d54d8539..0dd2884d 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
|
||||
@@ -285,6 +285,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
throw CancelSendSignal.INSTANCE;
|
||||
}
|
||||
|
||||
+ // FlameCord - Use elseIfs
|
||||
if ( pluginMessage.getTag().equals( con.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_13 ? "minecraft:brand" : "MC|Brand" ) )
|
||||
{
|
||||
// FlameCord start
|
||||
@@ -313,8 +314,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
con.unsafe().sendPacket( pluginMessage );
|
||||
throw CancelSendSignal.INSTANCE;
|
||||
}
|
||||
-
|
||||
- if ( pluginMessage.getTag().equals( "BungeeCord" ) )
|
||||
+ else if ( pluginMessage.getTag().equals( "BungeeCord" ) )
|
||||
{
|
||||
DataInput in = pluginMessage.getStream();
|
||||
ByteArrayDataOutput out = ByteStreams.newDataOutput();
|
||||
@@ -343,7 +343,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
// Null out stream, important as we don't want to send to ourselves
|
||||
out = null;
|
||||
}
|
||||
- if ( subChannel.equals( "Forward" ) )
|
||||
+ else if ( subChannel.equals( "Forward" ) )
|
||||
{
|
||||
// Read data from server
|
||||
String target = in.readUTF();
|
||||
@@ -388,7 +388,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
}
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "Connect" ) )
|
||||
+ else if ( subChannel.equals( "Connect" ) )
|
||||
{
|
||||
ServerInfo server = bungee.getServerInfo( in.readUTF() );
|
||||
if ( server != null )
|
||||
@@ -396,7 +396,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
con.connect( server, ServerConnectEvent.Reason.PLUGIN_MESSAGE );
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "ConnectOther" ) )
|
||||
+ else if ( subChannel.equals( "ConnectOther" ) )
|
||||
{
|
||||
ProxiedPlayer player = bungee.getPlayer( in.readUTF() );
|
||||
if ( player != null )
|
||||
@@ -408,7 +408,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
}
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "IP" ) )
|
||||
+ else if ( subChannel.equals( "IP" ) )
|
||||
{
|
||||
out.writeUTF( "IP" );
|
||||
if ( con.getSocketAddress() instanceof InetSocketAddress )
|
||||
@@ -421,7 +421,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
out.writeInt( 0 );
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "IPOther" ) )
|
||||
+ else if ( subChannel.equals( "IPOther" ) )
|
||||
{
|
||||
ProxiedPlayer player = bungee.getPlayer( in.readUTF() );
|
||||
if ( player != null )
|
||||
@@ -440,7 +440,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
}
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "PlayerCount" ) )
|
||||
+ else if ( subChannel.equals( "PlayerCount" ) )
|
||||
{
|
||||
String target = in.readUTF();
|
||||
out.writeUTF( "PlayerCount" );
|
||||
@@ -458,7 +458,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
}
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "PlayerList" ) )
|
||||
+ else if ( subChannel.equals( "PlayerList" ) )
|
||||
{
|
||||
String target = in.readUTF();
|
||||
out.writeUTF( "PlayerList" );
|
||||
@@ -476,12 +476,12 @@ public class DownstreamBridge extends PacketHandler
|
||||
}
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "GetServers" ) )
|
||||
+ else if ( subChannel.equals( "GetServers" ) )
|
||||
{
|
||||
out.writeUTF( "GetServers" );
|
||||
out.writeUTF( Util.csv( bungee.getServers().keySet() ) );
|
||||
}
|
||||
- if ( subChannel.equals( "Message" ) )
|
||||
+ else if ( subChannel.equals( "Message" ) )
|
||||
{
|
||||
String target = in.readUTF();
|
||||
String message = in.readUTF();
|
||||
@@ -500,7 +500,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
}
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "MessageRaw" ) )
|
||||
+ else if ( subChannel.equals( "MessageRaw" ) )
|
||||
{
|
||||
String target = in.readUTF();
|
||||
BaseComponent[] message = ComponentSerializer.parse( in.readUTF() );
|
||||
@@ -519,17 +519,17 @@ public class DownstreamBridge extends PacketHandler
|
||||
}
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "GetServer" ) )
|
||||
+ else if ( subChannel.equals( "GetServer" ) )
|
||||
{
|
||||
out.writeUTF( "GetServer" );
|
||||
out.writeUTF( server.getInfo().getName() );
|
||||
}
|
||||
- if ( subChannel.equals( "UUID" ) )
|
||||
+ else if ( subChannel.equals( "UUID" ) )
|
||||
{
|
||||
out.writeUTF( "UUID" );
|
||||
out.writeUTF( con.getUUID() );
|
||||
}
|
||||
- if ( subChannel.equals( "UUIDOther" ) )
|
||||
+ else if ( subChannel.equals( "UUIDOther" ) )
|
||||
{
|
||||
ProxiedPlayer player = bungee.getPlayer( in.readUTF() );
|
||||
if ( player != null )
|
||||
@@ -539,7 +539,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
out.writeUTF( player.getUUID() );
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "ServerIP" ) )
|
||||
+ else if ( subChannel.equals( "ServerIP" ) )
|
||||
{
|
||||
ServerInfo info = bungee.getServerInfo( in.readUTF() );
|
||||
if ( info != null && !info.getAddress().isUnresolved() )
|
||||
@@ -550,7 +550,7 @@ public class DownstreamBridge extends PacketHandler
|
||||
out.writeShort( info.getAddress().getPort() );
|
||||
}
|
||||
}
|
||||
- if ( subChannel.equals( "KickPlayer" ) )
|
||||
+ else if ( subChannel.equals( "KickPlayer" ) )
|
||||
{
|
||||
ProxiedPlayer player = bungee.getPlayer( in.readUTF() );
|
||||
if ( player != null )
|
||||
--
|
||||
2.20.1
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 355853706ca50aba3dc231b6adee5f5e8bd58548 Mon Sep 17 00:00:00 2001
|
||||
From e6b04ac9bcc7a544cf3291b159c9498f94cc9029 Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:25:51 +0800
|
||||
Subject: [PATCH] Don't allow name containing dot
|
||||
|
||||
|
||||
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 037a305b..c6dfa00f 100644
|
||||
index e23cf604..b4067b1e 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
|
||||
@@ -404,13 +404,16 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -387,13 +387,16 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
Preconditions.checkState( thisState == State.USERNAME, "Not expecting USERNAME" );
|
||||
this.loginRequest = loginRequest;
|
||||
|
||||
@ -28,5 +28,5 @@ index 037a305b..c6dfa00f 100644
|
||||
disconnect( bungee.getTranslation( "name_too_long" ) );
|
||||
return;
|
||||
--
|
||||
2.20.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 9c45d17f7e322b01c8a5a55d21b7cb1d65345056 Mon Sep 17 00:00:00 2001
|
||||
From 77d2ccf13e5f767020d6dac546bdbaf275afc8a3 Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:30:07 +0800
|
||||
Subject: [PATCH] Use pipeline to reduce redundancy
|
||||
@ -74,5 +74,5 @@ index 5c05f2b9..606866a5 100644
|
||||
}
|
||||
}
|
||||
--
|
||||
2.20.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 461651e8a304ff9f57adac8d9c975b2a7e6ce1ea Mon Sep 17 00:00:00 2001
|
||||
From b5157be241a3611c3fefc0a4bc297325e83951de Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:35:33 +0800
|
||||
Subject: [PATCH] Allow custom uuids even if onlineMode is true
|
||||
|
||||
|
||||
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 c6dfa00f..3c67494f 100644
|
||||
index b4067b1e..3120abdb 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
|
||||
@@ -703,7 +703,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -686,7 +686,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
public void setUniqueId(UUID uuid)
|
||||
{
|
||||
Preconditions.checkState( thisState == State.USERNAME, "Can only set uuid while state is username" );
|
||||
@ -18,5 +18,5 @@ index c6dfa00f..3c67494f 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.20.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,14 +1,14 @@
|
||||
From e57213dfb0ed9e6ebb122cb95d08a2e7592c4c60 Mon Sep 17 00:00:00 2001
|
||||
From 53f0affe159b7b18210d1927bd4991dd27b3b1d3 Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:36:08 +0800
|
||||
Subject: [PATCH] Finish early to avoid multiple incoming packets
|
||||
|
||||
|
||||
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 3c67494f..f7ed1f46 100644
|
||||
index 3120abdb..4a17a117 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
|
||||
@@ -470,6 +470,8 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -453,6 +453,8 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
{
|
||||
Preconditions.checkState( thisState == State.ENCRYPT, "Not expecting ENCRYPT" );
|
||||
|
||||
@ -17,7 +17,7 @@ index 3c67494f..f7ed1f46 100644
|
||||
SecretKey sharedKey = EncryptionUtil.getSecret( encryptResponse, request );
|
||||
// Waterfall start
|
||||
if (sharedKey instanceof SecretKeySpec) {
|
||||
@@ -529,6 +531,9 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -512,6 +514,9 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
|
||||
private void finish()
|
||||
{
|
||||
@ -27,7 +27,7 @@ index 3c67494f..f7ed1f46 100644
|
||||
if ( isOnlineMode() )
|
||||
{
|
||||
// Check for multiple connections
|
||||
@@ -610,8 +615,6 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -593,8 +598,6 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
}
|
||||
|
||||
userCon.connect( server, null, true, ServerConnectEvent.Reason.JOIN_PROXY );
|
||||
@ -37,5 +37,5 @@ index 3c67494f..f7ed1f46 100644
|
||||
}
|
||||
} );
|
||||
--
|
||||
2.20.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,32 +0,0 @@
|
||||
From 7fc05a47e12839eb256a9141ab122886ca788522 Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:24:42 +0800
|
||||
Subject: [PATCH] use address & getHostString
|
||||
|
||||
|
||||
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 0dd2884d..474551d3 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
|
||||
@@ -542,12 +542,15 @@ public class DownstreamBridge extends PacketHandler
|
||||
else if ( subChannel.equals( "ServerIP" ) )
|
||||
{
|
||||
ServerInfo info = bungee.getServerInfo( in.readUTF() );
|
||||
- if ( info != null && !info.getAddress().isUnresolved() )
|
||||
+ // FlameCord use address
|
||||
+ InetSocketAddress address = info.getAddress();
|
||||
+ if ( info != null && !address.isUnresolved() )
|
||||
{
|
||||
out.writeUTF( "ServerIP" );
|
||||
out.writeUTF( info.getName() );
|
||||
- out.writeUTF( info.getAddress().getAddress().getHostAddress() );
|
||||
- out.writeShort( info.getAddress().getPort() );
|
||||
+ // FlameCord - Use getHostString
|
||||
+ out.writeUTF( address.getHostString() );
|
||||
+ out.writeShort( address.getPort() );
|
||||
}
|
||||
}
|
||||
else if ( subChannel.equals( "KickPlayer" ) )
|
||||
--
|
||||
2.20.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d17df93a12dd7fc3bdda514ccfdd96041f8a9e88 Mon Sep 17 00:00:00 2001
|
||||
From 97c51221a89d054229919124c1f345d563406a46 Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:40:55 +0800
|
||||
Subject: [PATCH] Change IllegalStateException to QuietException and explain
|
||||
@ -6,10 +6,10 @@ Subject: [PATCH] Change IllegalStateException to QuietException and explain
|
||||
|
||||
|
||||
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 fc1798fb..db3d9c86 100644
|
||||
index 01075a85..fb065ccd 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/UserConnection.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/UserConnection.java
|
||||
@@ -310,7 +310,8 @@ public final class UserConnection implements ProxiedPlayer
|
||||
@@ -309,7 +309,8 @@ public final class UserConnection implements ProxiedPlayer
|
||||
|
||||
if ( getServer() == null && !ch.isClosing() )
|
||||
{
|
||||
@ -20,5 +20,5 @@ index fc1798fb..db3d9c86 100644
|
||||
return;
|
||||
}
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 1d113c7643f8d333cd70d8e6ddd64e78c1ab73be Mon Sep 17 00:00:00 2001
|
||||
From faa24f10ba4bb69ed99cdf3fafc42680b7dadd55 Mon Sep 17 00:00:00 2001
|
||||
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
|
||||
Date: Wed, 16 Dec 2020 18:43:17 +0800
|
||||
Subject: [PATCH] Don't declare uuid unless it's 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 f7ed1f46..e7542b1c 100644
|
||||
index 4a17a117..95a6f40c 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
|
||||
@@ -513,7 +513,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -496,7 +496,10 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
{
|
||||
loginProfile = obj;
|
||||
name = obj.getName();
|
||||
@ -21,5 +21,5 @@ index f7ed1f46..e7542b1c 100644
|
||||
return;
|
||||
}
|
||||
--
|
||||
2.20.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 05af8ef64d93e186b1568e60596935c70b260259 Mon Sep 17 00:00:00 2001
|
||||
From ec1abfc008553e30879c286fcd39d87844eabdb8 Mon Sep 17 00:00:00 2001
|
||||
From: Juan Cruz Linsalata <LinsaFTW@users.noreply.github.com>
|
||||
Date: Mon, 12 Oct 2020 15:40:53 -0300
|
||||
Subject: [PATCH] FlameCord General Patch
|
||||
@ -116,7 +116,7 @@ index 00000000..81ded224
|
||||
+ }
|
||||
+}
|
||||
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 bb39d31b..28edad1a 100644
|
||||
index ec07ae6f..91da8ab6 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,5 +1,6 @@
|
||||
@ -191,7 +191,7 @@ index 00000000..a323598e
|
||||
+ }
|
||||
+}
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
index 41d752a5..61c2e52a 100644
|
||||
index 4c7e0fdc..4527c2da 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
@@ -9,6 +9,9 @@ import com.google.common.collect.Sets;
|
||||
@ -217,7 +217,7 @@ index 41d752a5..61c2e52a 100644
|
||||
import net.md_5.bungee.netty.PipelineUtils;
|
||||
import net.md_5.bungee.protocol.DefinedPacket;
|
||||
import net.md_5.bungee.protocol.ProtocolConstants;
|
||||
@@ -233,11 +242,12 @@ public class BungeeCord extends ProxyServer
|
||||
@@ -225,11 +234,12 @@ public class BungeeCord extends ProxyServer
|
||||
// Waterfall end
|
||||
|
||||
pluginManager = new PluginManager( this );
|
||||
@ -235,7 +235,7 @@ index 41d752a5..61c2e52a 100644
|
||||
|
||||
if ( !Boolean.getBoolean( "net.md_5.bungee.native.disable" ) )
|
||||
{
|
||||
@@ -286,6 +296,15 @@ public class BungeeCord extends ProxyServer
|
||||
@@ -278,6 +288,15 @@ public class BungeeCord extends ProxyServer
|
||||
pluginManager.loadPlugins();
|
||||
config.load();
|
||||
|
||||
@ -251,7 +251,7 @@ index 41d752a5..61c2e52a 100644
|
||||
if ( config.isForgeSupport() )
|
||||
{
|
||||
registerChannel( ForgeConstants.FML_TAG );
|
||||
@@ -577,9 +596,7 @@ public class BungeeCord extends ProxyServer
|
||||
@@ -569,9 +588,7 @@ public class BungeeCord extends ProxyServer
|
||||
String translation = "<translation '" + name + "' missing>";
|
||||
try
|
||||
{
|
||||
@ -263,7 +263,7 @@ index 41d752a5..61c2e52a 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 7b99c466..522bd93d 100644
|
||||
index af73283e..e3e4ac9f 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
|
||||
@@ -1,6 +1,8 @@
|
||||
@ -275,7 +275,7 @@ index 7b99c466..522bd93d 100644
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import io.netty.buffer.ByteBufAllocator;
|
||||
import java.net.InetSocketAddress;
|
||||
@@ -163,7 +165,7 @@ public class ServerConnector extends PacketHandler
|
||||
@@ -162,7 +164,7 @@ public class ServerConnector extends PacketHandler
|
||||
{
|
||||
if ( packet.packet == null )
|
||||
{
|
||||
@ -285,7 +285,7 @@ index 7b99c466..522bd93d 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 db3d9c86..bc365e8b 100644
|
||||
index fb065ccd..3d18dbf9 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/UserConnection.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/UserConnection.java
|
||||
@@ -35,6 +35,7 @@ import net.md_5.bungee.api.SkinConfiguration;
|
||||
@ -304,7 +304,7 @@ index db3d9c86..bc365e8b 100644
|
||||
|
||||
@RequiredArgsConstructor
|
||||
public final class UserConnection implements ProxiedPlayer
|
||||
@@ -390,9 +392,11 @@ public final class UserConnection implements ProxiedPlayer
|
||||
@@ -389,9 +391,11 @@ public final class UserConnection implements ProxiedPlayer
|
||||
.option( ChannelOption.CONNECT_TIMEOUT_MILLIS, request.getConnectTimeout() )
|
||||
.remoteAddress( target.getAddress() );
|
||||
// Windows is bugged, multi homed users will just have to live with random connecting IPs
|
||||
@ -319,10 +319,10 @@ index db3d9c86..bc365e8b 100644
|
||||
b.connect().addListener( listener );
|
||||
}
|
||||
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 e7542b1c..deee607d 100644
|
||||
index 95a6f40c..82e23314 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.logging.Level;
|
||||
@@ -14,6 +14,8 @@ import java.util.logging.Level;
|
||||
import javax.crypto.SecretKey;
|
||||
import javax.crypto.spec.SecretKeySpec;
|
||||
|
||||
@ -331,7 +331,7 @@ index e7542b1c..deee607d 100644
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import net.md_5.bungee.BungeeCord;
|
||||
@@ -152,7 +154,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -150,7 +152,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
{
|
||||
if ( packet.packet == null )
|
||||
{
|
||||
@ -341,7 +341,7 @@ index e7542b1c..deee607d 100644
|
||||
}
|
||||
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/PingHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/PingHandler.java
|
||||
index 6cd71071..423af854 100644
|
||||
index 6df3f3dd..264c22e8 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/connection/PingHandler.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/connection/PingHandler.java
|
||||
@@ -1,6 +1,7 @@
|
||||
@ -353,7 +353,7 @@ index 6cd71071..423af854 100644
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import net.md_5.bungee.BungeeCord;
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
index b8e50855..7f18b564 100644
|
||||
index 3bbc1510..4c53e02c 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
@@ -1,6 +1,8 @@
|
||||
@ -366,7 +366,7 @@ index b8e50855..7f18b564 100644
|
||||
import io.netty.channel.ChannelInboundHandlerAdapter;
|
||||
import io.netty.handler.codec.CorruptedFrameException;
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
index 4996a7b4..1d86aa63 100644
|
||||
index 654203ab..a840bc70 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
@@ -1,6 +1,8 @@
|
||||
@ -379,5 +379,5 @@ index 4996a7b4..1d86aa63 100644
|
||||
import io.netty.buffer.PooledByteBufAllocator;
|
||||
import io.netty.channel.Channel;
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 2b17b5973a9618e4f4939c801d47e34a43c26477 Mon Sep 17 00:00:00 2001
|
||||
From 983a88969c8f9a151ad81f3e0b77c664d065217f Mon Sep 17 00:00:00 2001
|
||||
From: linsaftw <25271111+linsaftw@users.noreply.github.com>
|
||||
Date: Sat, 1 May 2021 14:17:48 -0300
|
||||
Subject: [PATCH] FlameCord module system
|
||||
@ -134,7 +134,7 @@ index 00000000..e82c4844
|
||||
+ }
|
||||
+}
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
index 61c2e52a..a862f0a2 100644
|
||||
index 4527c2da..8111f40d 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
@@ -12,6 +12,7 @@ import com.google.gson.GsonBuilder;
|
||||
@ -145,7 +145,7 @@ index 61c2e52a..a862f0a2 100644
|
||||
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
|
||||
import io.github.waterfallmc.waterfall.conf.WaterfallConfiguration;
|
||||
import io.github.waterfallmc.waterfall.event.ProxyExceptionEvent;
|
||||
@@ -286,9 +287,10 @@ public class BungeeCord extends ProxyServer
|
||||
@@ -278,9 +279,10 @@ public class BungeeCord extends ProxyServer
|
||||
bossEventLoopGroup = PipelineUtils.newEventLoopGroup( 0, new ThreadFactoryBuilder().setNameFormat( "Netty Boss IO Thread #%1$d" ).build() );
|
||||
workerEventLoopGroup = PipelineUtils.newEventLoopGroup( 0, new ThreadFactoryBuilder().setNameFormat( "Netty Worker IO Thread #%1$d" ).build() );
|
||||
|
||||
@ -158,7 +158,7 @@ index 61c2e52a..a862f0a2 100644
|
||||
|
||||
pluginsFolder.mkdir();
|
||||
pluginManager.detectPlugins( pluginsFolder );
|
||||
@@ -304,6 +306,7 @@ public class BungeeCord extends ProxyServer
|
||||
@@ -296,6 +298,7 @@ public class BungeeCord extends ProxyServer
|
||||
}
|
||||
|
||||
FlameCord.renew(logger, whitelistedAddresses);
|
||||
@ -166,7 +166,7 @@ index 61c2e52a..a862f0a2 100644
|
||||
|
||||
if ( config.isForgeSupport() )
|
||||
{
|
||||
@@ -833,4 +836,56 @@ public class BungeeCord extends ProxyServer
|
||||
@@ -825,4 +828,56 @@ public class BungeeCord extends ProxyServer
|
||||
{
|
||||
return new BungeeTitle();
|
||||
}
|
||||
@ -224,5 +224,5 @@ index 61c2e52a..a862f0a2 100644
|
||||
+ }
|
||||
}
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b2c9244be507307e1f490b2dfb53f8021d81fd85 Mon Sep 17 00:00:00 2001
|
||||
From b5571b07773efbc291f87e7b85ff1b4d25ba3192 Mon Sep 17 00:00:00 2001
|
||||
From: linsaftw <25271111+linsaftw@users.noreply.github.com>
|
||||
Date: Sat, 1 May 2021 13:40:39 -0300
|
||||
Subject: [PATCH] FlameCord message configuration
|
||||
@ -209,10 +209,10 @@ index a323598e..bf6f8538 100644
|
||||
}
|
||||
}
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
index a862f0a2..fb19d5dc 100644
|
||||
index 8111f40d..483884a4 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
@@ -596,14 +596,8 @@ public class BungeeCord extends ProxyServer
|
||||
@@ -588,14 +588,8 @@ public class BungeeCord extends ProxyServer
|
||||
@Override
|
||||
public String getTranslation(String name, Object... args)
|
||||
{
|
||||
@ -230,5 +230,5 @@ index a862f0a2..fb19d5dc 100644
|
||||
|
||||
@Override
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
127
Waterfall-Proxy-Patches/0021-Fix-ByteBuf-memory-leaks.patch
Normal file
127
Waterfall-Proxy-Patches/0021-Fix-ByteBuf-memory-leaks.patch
Normal file
@ -0,0 +1,127 @@
|
||||
From 88219f64895f1a90ecb7448c38e409f13981eaa9 Mon Sep 17 00:00:00 2001
|
||||
From: linsaftw <linsaftw@users.noreply.github.com>
|
||||
Date: Sat, 20 Mar 2021 12:36:25 -0300
|
||||
Subject: [PATCH] Fix ByteBuf memory leaks
|
||||
|
||||
|
||||
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 e3e4ac9f..c8089afc 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
|
||||
@@ -274,9 +274,15 @@ public class ServerConnector extends PacketHandler
|
||||
} else
|
||||
{
|
||||
ByteBuf brand = ByteBufAllocator.DEFAULT.heapBuffer();
|
||||
- DefinedPacket.writeString( bungee.getName() + " (" + bungee.getVersion() + ")", brand );
|
||||
- user.unsafe().sendPacket( new PluginMessage( user.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_13 ? "minecraft:brand" : "MC|Brand", brand, handshakeHandler.isServerForge() ) );
|
||||
- brand.release();
|
||||
+
|
||||
+ try
|
||||
+ {
|
||||
+ DefinedPacket.writeString( bungee.getName() + " (" + bungee.getVersion() + ")", brand );
|
||||
+ user.unsafe().sendPacket( new PluginMessage( user.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_13 ? "minecraft:brand" : "MC|Brand", brand, handshakeHandler.isServerForge() ) );
|
||||
+ } finally
|
||||
+ {
|
||||
+ brand.release();
|
||||
+ }
|
||||
}
|
||||
|
||||
user.setDimension( login.getDimension() );
|
||||
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 9e180c30..40c016d6 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
|
||||
@@ -287,15 +287,24 @@ public class DownstreamBridge extends PacketHandler
|
||||
if ( pluginMessage.getTag().equals( con.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_13 ? "minecraft:brand" : "MC|Brand" ) )
|
||||
{
|
||||
ByteBuf brand = Unpooled.wrappedBuffer( pluginMessage.getData() );
|
||||
- String serverBrand = DefinedPacket.readString( brand );
|
||||
- brand.release();
|
||||
|
||||
- Preconditions.checkState( !serverBrand.contains( bungee.getName() ), "Cannot connect proxy to itself!" );
|
||||
+ try {
|
||||
+ String serverBrand;
|
||||
|
||||
- brand = ByteBufAllocator.DEFAULT.heapBuffer();
|
||||
- DefinedPacket.writeString( bungee.getName() + " <- " + serverBrand, brand ); // Waterfall
|
||||
- pluginMessage.setData( brand );
|
||||
- brand.release();
|
||||
+ try {
|
||||
+ serverBrand = DefinedPacket.readString( brand );
|
||||
+ } finally {
|
||||
+ brand.release();
|
||||
+ }
|
||||
+
|
||||
+ Preconditions.checkState( !serverBrand.contains( bungee.getName() ), "Cannot connect proxy to itself!" );
|
||||
+
|
||||
+ brand = ByteBufAllocator.DEFAULT.heapBuffer();
|
||||
+ DefinedPacket.writeString( bungee.getName() + " <- " + serverBrand, brand ); // Waterfall
|
||||
+ pluginMessage.setData( brand );
|
||||
+ } finally {
|
||||
+ brand.release();
|
||||
+ }
|
||||
// changes in the packet are ignored so we need to send it manually
|
||||
con.unsafe().sendPacket( pluginMessage );
|
||||
throw CancelSendSignal.INSTANCE;
|
||||
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 13456b34..6d4b96cd 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
|
||||
@@ -141,11 +141,15 @@ public abstract class EntityMap
|
||||
if ( readId == oldId || readId == newId )
|
||||
{
|
||||
ByteBuf data = packet.copy();
|
||||
- packet.readerIndex( offset );
|
||||
- packet.writerIndex( offset );
|
||||
- DefinedPacket.writeVarInt( readId == oldId ? newId : oldId, packet );
|
||||
- packet.writeBytes( data );
|
||||
- data.release();
|
||||
+
|
||||
+ try {
|
||||
+ packet.readerIndex( offset );
|
||||
+ packet.writerIndex( offset );
|
||||
+ DefinedPacket.writeVarInt( readId == oldId ? newId : oldId, packet );
|
||||
+ packet.writeBytes( data );
|
||||
+ } finally {
|
||||
+ data.release();
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/forge/ForgeUtils.java b/proxy/src/main/java/net/md_5/bungee/forge/ForgeUtils.java
|
||||
index cefa0206..8d4439ab 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/forge/ForgeUtils.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/forge/ForgeUtils.java
|
||||
@@ -38,16 +38,22 @@ public class ForgeUtils
|
||||
{
|
||||
Map<String, String> modTags = new HashMap<>();
|
||||
ByteBuf payload = Unpooled.wrappedBuffer( pluginMessage.getData() );
|
||||
- byte discriminator = payload.readByte();
|
||||
- if ( discriminator == 2 ) // ModList
|
||||
- {
|
||||
- ByteBuf buffer = payload.slice();
|
||||
- int modCount = DefinedPacket.readVarInt( buffer, 2 );
|
||||
- for ( int i = 0; i < modCount; i++ )
|
||||
+
|
||||
+ try {
|
||||
+ byte discriminator = payload.readByte();
|
||||
+ if ( discriminator == 2 ) // ModList
|
||||
{
|
||||
- modTags.put( DefinedPacket.readString( buffer ), DefinedPacket.readString( buffer ) );
|
||||
+ ByteBuf buffer = payload.slice();
|
||||
+ int modCount = DefinedPacket.readVarInt( buffer, 2 );
|
||||
+ for ( int i = 0; i < modCount; i++ )
|
||||
+ {
|
||||
+ modTags.put( DefinedPacket.readString( buffer ), DefinedPacket.readString( buffer ) );
|
||||
+ }
|
||||
}
|
||||
+ } finally {
|
||||
+ payload.release();
|
||||
}
|
||||
+
|
||||
return modTags;
|
||||
}
|
||||
|
||||
--
|
||||
2.31.1.windows.1
|
||||
|
@ -1,11 +1,11 @@
|
||||
From eea04c872972cf457d2ffc61fda629c4ad7c21d0 Mon Sep 17 00:00:00 2001
|
||||
From b0a0b07a690aa1a78ed90f2318dd269145497e4d 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
|
||||
index 91da8ab6..c03e1b51 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>
|
||||
@ -23,5 +23,5 @@ index 28edad1a..f0761a4f 100644
|
||||
if ( packet != null )
|
||||
{
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d1d73f437bc7e61be80eed98c4d8485f53b38a02 Mon Sep 17 00:00:00 2001
|
||||
From f3e4276fb66c18b3c78975e452d1d4b6c78939dc Mon Sep 17 00:00:00 2001
|
||||
From: linsaftw <25271111+linsaftw@users.noreply.github.com>
|
||||
Date: Fri, 30 Apr 2021 22:54:44 -0300
|
||||
Subject: [PATCH] Firewall System
|
||||
@ -246,7 +246,7 @@ index 00000000..dfb5c6d3
|
||||
+}
|
||||
\ No newline at end of file
|
||||
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 f0761a4f..31873afc 100644
|
||||
index c03e1b51..7f4b5b45 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
|
||||
@@ -46,8 +46,14 @@ public class MinecraftDecoder extends MessageToMessageDecoder<ByteBuf>
|
||||
@ -303,10 +303,10 @@ index bf6f8538..fa0b59c2 100644
|
||||
// FlameCord - Collect ips from servers
|
||||
final Collection<String> whitelistedAddresses = new HashSet<>();
|
||||
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 494375cd..aedfece3 100644
|
||||
index c8089afc..2b2a12d8 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
|
||||
@@ -165,6 +165,9 @@ public class ServerConnector extends PacketHandler
|
||||
@@ -164,6 +164,9 @@ public class ServerConnector extends PacketHandler
|
||||
{
|
||||
if ( packet.packet == null )
|
||||
{
|
||||
@ -317,10 +317,10 @@ index 494375cd..aedfece3 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 deee607d..3720825a 100644
|
||||
index 82e23314..8e1749a4 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
|
||||
@@ -154,6 +154,9 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -152,6 +152,9 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
{
|
||||
if ( packet.packet == null )
|
||||
{
|
||||
@ -330,7 +330,7 @@ index deee607d..3720825a 100644
|
||||
throw new QuietException( "Unexpected packet received during server login process!\n" + BufUtil.dump(packet.buf, 16) );
|
||||
}
|
||||
}
|
||||
@@ -396,6 +399,9 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -379,6 +382,9 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
}
|
||||
break;
|
||||
default:
|
||||
@ -341,7 +341,7 @@ index deee607d..3720825a 100644
|
||||
}
|
||||
}
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/PingHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/PingHandler.java
|
||||
index 423af854..70917b0b 100644
|
||||
index 264c22e8..2101cbc4 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/connection/PingHandler.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/connection/PingHandler.java
|
||||
@@ -2,6 +2,7 @@ package net.md_5.bungee.connection;
|
||||
@ -352,7 +352,7 @@ index 423af854..70917b0b 100644
|
||||
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import net.md_5.bungee.BungeeCord;
|
||||
@@ -59,6 +60,9 @@ public class PingHandler extends PacketHandler
|
||||
@@ -58,6 +59,9 @@ public class PingHandler extends PacketHandler
|
||||
{
|
||||
if ( packet.packet == null )
|
||||
{
|
||||
@ -363,7 +363,7 @@ index 423af854..70917b0b 100644
|
||||
}
|
||||
}
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
index 7f18b564..616651ba 100644
|
||||
index 4c53e02c..376daee9 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
@@ -11,6 +11,7 @@ import io.netty.handler.codec.haproxy.HAProxyMessage;
|
||||
@ -375,7 +375,7 @@ index 7f18b564..616651ba 100644
|
||||
import net.md_5.bungee.api.ProxyServer;
|
||||
import net.md_5.bungee.connection.CancelSendSignal;
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
index 1d86aa63..915c162f 100644
|
||||
index a840bc70..4e23c996 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
@@ -63,6 +63,13 @@ public class PipelineUtils
|
||||
@ -426,5 +426,5 @@ index b3bdfd05..49d53f17 100644
|
||||
throw new IllegalStateException( "Invalid data request packet" );
|
||||
}
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,11 +1,11 @@
|
||||
From 59dcb230fde16df56f6a30ea041a4c20fb2d2794 Mon Sep 17 00:00:00 2001
|
||||
From 9f407b33ffcaf789e7c58bcd2455bbbc6b7b8c32 Mon Sep 17 00:00:00 2001
|
||||
From: linsaftw <25271111+linsaftw@users.noreply.github.com>
|
||||
Date: Fri, 30 Apr 2021 23:51:51 -0300
|
||||
Subject: [PATCH] FlameCord logger options
|
||||
|
||||
|
||||
diff --git a/flamecord/src/main/java/dev/_2lstudios/flamecord/configuration/FlameCordConfiguration.java b/flamecord/src/main/java/dev/_2lstudios/flamecord/configuration/FlameCordConfiguration.java
|
||||
index 8bb61ac1..8822c6d3 100644
|
||||
index 8bb61ac1..056dcb81 100644
|
||||
--- a/flamecord/src/main/java/dev/_2lstudios/flamecord/configuration/FlameCordConfiguration.java
|
||||
+++ b/flamecord/src/main/java/dev/_2lstudios/flamecord/configuration/FlameCordConfiguration.java
|
||||
@@ -12,6 +12,15 @@ import net.md_5.bungee.config.Configuration;
|
||||
@ -24,12 +24,11 @@ index 8bb61ac1..8822c6d3 100644
|
||||
@Getter
|
||||
private boolean firewallNotify = true;
|
||||
@Getter
|
||||
@@ -34,6 +43,12 @@ public class FlameCordConfiguration {
|
||||
@@ -34,6 +43,11 @@ public class FlameCordConfiguration {
|
||||
configuration = configurationProvider.load(configurationFile);
|
||||
}
|
||||
|
||||
+ this.loggerInitialhandler = setIfUnexistant("logger.initialhandler", this.loggerInitialhandler,
|
||||
+ configuration);
|
||||
+ this.loggerInitialhandler = setIfUnexistant("logger.initialhandler", this.loggerInitialhandler, configuration);
|
||||
+ this.loggerExceptions = setIfUnexistant("logger.exceptions", this.loggerExceptions, configuration);
|
||||
+ this.loggerDump = setIfUnexistant("logger.dump", this.loggerDump, configuration);
|
||||
+ this.loggerHaProxy = setIfUnexistant("logger.haproxy", this.loggerHaProxy, configuration);
|
||||
@ -38,10 +37,10 @@ index 8bb61ac1..8822c6d3 100644
|
||||
this.firewallNotify = setIfUnexistant("firewall.notify", this.firewallNotify, configuration);
|
||||
this.firewallSeconds = setIfUnexistant("firewall.seconds", this.firewallSeconds, configuration);
|
||||
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 3720825a..03c5aa07 100644
|
||||
index 8e1749a4..4767edb6 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
|
||||
@@ -370,7 +370,8 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -353,7 +353,8 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
{
|
||||
case 1:
|
||||
// Ping
|
||||
@ -51,7 +50,7 @@ index 3720825a..03c5aa07 100644
|
||||
{
|
||||
bungee.getLogger().log( Level.INFO, "{0} has pinged", this );
|
||||
}
|
||||
@@ -379,7 +380,8 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
@@ -362,7 +363,8 @@ public class InitialHandler extends PacketHandler implements PendingConnection
|
||||
break;
|
||||
case 2:
|
||||
// Login
|
||||
@ -62,7 +61,7 @@ index 3720825a..03c5aa07 100644
|
||||
bungee.getLogger().log( Level.INFO, "{0} has connected", this );
|
||||
}
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
index 616651ba..7bf30b23 100644
|
||||
index 376daee9..62895541 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
@@ -47,7 +47,8 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
@ -75,8 +74,8 @@ index 616651ba..7bf30b23 100644
|
||||
{
|
||||
ProxyServer.getInstance().getLogger().log( Level.INFO, "{0} has connected", handler );
|
||||
}
|
||||
@@ -63,7 +64,8 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
channel.close();
|
||||
@@ -62,7 +63,8 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
channel.markClosed();
|
||||
handler.disconnected( channel );
|
||||
|
||||
- if ( !( handler instanceof InitialHandler || handler instanceof PingHandler ) )
|
||||
@ -85,7 +84,7 @@ index 616651ba..7bf30b23 100644
|
||||
{
|
||||
ProxyServer.getInstance().getLogger().log( Level.INFO, "{0} has disconnected", handler );
|
||||
}
|
||||
@@ -94,10 +96,13 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
@@ -93,10 +95,12 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
{
|
||||
InetSocketAddress newAddress = new InetSocketAddress( proxy.sourceAddress(), proxy.sourcePort() );
|
||||
|
||||
@ -94,16 +93,15 @@ index 616651ba..7bf30b23 100644
|
||||
- channel.getRemoteAddress(), newAddress
|
||||
- } );
|
||||
+ // FlameCord - Option to log haproxy
|
||||
+ if ( FlameCord.getInstance().getFlameCordConfiguration().isLoggerHaProxy() ) {
|
||||
+ if ( FlameCord.getInstance().getFlameCordConfiguration().isLoggerHaProxy() )
|
||||
+ ProxyServer.getInstance().getLogger().log( Level.FINE, "Set remote address via PROXY {0} -> {1}", new Object[]
|
||||
+ {
|
||||
+ channel.getRemoteAddress(), newAddress
|
||||
+ } );
|
||||
+ }
|
||||
|
||||
channel.setRemoteAddress( newAddress );
|
||||
} finally
|
||||
@@ -141,6 +146,9 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
@@ -140,6 +144,9 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
{
|
||||
boolean logExceptions = !( handler instanceof PingHandler );
|
||||
|
||||
@ -114,7 +112,7 @@ index 616651ba..7bf30b23 100644
|
||||
{
|
||||
if ( cause instanceof ReadTimeoutException )
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
index 915c162f..a6722b41 100644
|
||||
index 4e23c996..7fb1e70f 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
@@ -116,7 +116,10 @@ public class PipelineUtils
|
||||
@ -129,6 +127,18 @@ index 915c162f..a6722b41 100644
|
||||
|
||||
ctx.close();
|
||||
}
|
||||
--
|
||||
2.31.1
|
||||
@@ -218,7 +221,10 @@ public class PipelineUtils
|
||||
// FlameCord - Close on exception caught
|
||||
@Override
|
||||
public void exceptionCaught(final ChannelHandlerContext ctx, final Throwable cause) throws Exception {
|
||||
- cause.printStackTrace();
|
||||
+ // FlameCord - Option to log exceptions
|
||||
+ if (FlameCord.getInstance().getFlameCordConfiguration().isLoggerExceptions()) {
|
||||
+ cause.printStackTrace();
|
||||
+ }
|
||||
|
||||
ctx.close();
|
||||
}
|
||||
--
|
||||
2.31.1.windows.1
|
||||
|
@ -1,14 +1,14 @@
|
||||
From e00ed4d4e69f192d801c294b96a5bac11c21a344 Mon Sep 17 00:00:00 2001
|
||||
From 8b821ba664dec9f72eae84e445cd6b973550de9d Mon Sep 17 00:00:00 2001
|
||||
From: linsaftw <25271111+linsaftw@users.noreply.github.com>
|
||||
Date: Sat, 1 May 2021 23:28:19 -0300
|
||||
Subject: [PATCH] Always release packet
|
||||
|
||||
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
index 7bf30b23..21bd5a17 100644
|
||||
index 62895541..7316dc7a 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/HandlerBoss.java
|
||||
@@ -112,12 +112,14 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
@@ -110,12 +110,14 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
return;
|
||||
}
|
||||
|
||||
@ -27,7 +27,7 @@ index 7bf30b23..21bd5a17 100644
|
||||
if ( sendPacket && packet.packet != null )
|
||||
{
|
||||
try
|
||||
@@ -132,10 +134,10 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
@@ -130,10 +132,10 @@ public class HandlerBoss extends ChannelInboundHandlerAdapter
|
||||
{
|
||||
handler.handle( packet );
|
||||
}
|
||||
@ -42,5 +42,5 @@ index 7bf30b23..21bd5a17 100644
|
||||
}
|
||||
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 14c353d7490b306ac6b9caee45b8d8eec824c128 Mon Sep 17 00:00:00 2001
|
||||
From 4490a84ec88d2ee52c4333eb6f5fe1b2433a50d8 Mon Sep 17 00:00:00 2001
|
||||
From: abhiram <abhithegamer2019@gmail.com>
|
||||
Date: Thu, 13 May 2021 01:05:03 +0530
|
||||
Subject: [PATCH] Added an api method to unload Plugins
|
||||
@ -82,5 +82,5 @@ index 90031156..a190dfae 100644
|
||||
ProxyServer.getInstance().getLogger().log( Level.INFO, "Loaded plugin {0} version {1} by {2}", new Object[]
|
||||
{
|
||||
--
|
||||
2.26.2.windows.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,167 +0,0 @@
|
||||
From 70d54b4ecbdca409826513d00c0a4d53d6603a11 Mon Sep 17 00:00:00 2001
|
||||
From: linsaftw <linsaftw@users.noreply.github.com>
|
||||
Date: Sat, 20 Mar 2021 12:36:25 -0300
|
||||
Subject: [PATCH] Fix ByteBuf memory leaks
|
||||
|
||||
|
||||
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 522bd93d..494375cd 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/ServerConnector.java
|
||||
@@ -284,9 +284,15 @@ public class ServerConnector extends PacketHandler
|
||||
} else
|
||||
{
|
||||
ByteBuf brand = ByteBufAllocator.DEFAULT.heapBuffer();
|
||||
- DefinedPacket.writeString(brandString, brand);
|
||||
- user.unsafe().sendPacket( new PluginMessage( user.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_13 ? "minecraft:brand" : "MC|Brand", brand, handshakeHandler.isServerForge() ) );
|
||||
- brand.release();
|
||||
+
|
||||
+ try
|
||||
+ {
|
||||
+ DefinedPacket.writeString(brandString, brand);
|
||||
+ user.unsafe().sendPacket( new PluginMessage( user.getPendingConnection().getVersion() >= ProtocolConstants.MINECRAFT_1_13 ? "minecraft:brand" : "MC|Brand", brand, handshakeHandler.isServerForge() ) );
|
||||
+ } finally
|
||||
+ {
|
||||
+ brand.release();
|
||||
+ }
|
||||
}
|
||||
// FlameCord 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 474551d3..8716d0c8 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
|
||||
@@ -294,12 +294,21 @@ public class DownstreamBridge extends PacketHandler
|
||||
try
|
||||
{
|
||||
ByteBuf brand = Unpooled.wrappedBuffer(pluginMessage.getData());
|
||||
- String serverBrand = DefinedPacket.readString(brand);
|
||||
- brand.release();
|
||||
- brand = ByteBufAllocator.DEFAULT.heapBuffer();
|
||||
- DefinedPacket.writeString(bungee.getName() + " <- " + serverBrand, brand ); // Waterfall
|
||||
- pluginMessage.setData(brand);
|
||||
- brand.release();
|
||||
+ String serverBrand = null;
|
||||
+
|
||||
+ try {
|
||||
+ serverBrand = DefinedPacket.readString(brand);
|
||||
+ } finally {
|
||||
+ brand.release();
|
||||
+ }
|
||||
+
|
||||
+ try {
|
||||
+ brand = ByteBufAllocator.DEFAULT.heapBuffer();
|
||||
+ DefinedPacket.writeString(bungee.getName() + " <- " + serverBrand, brand ); // Waterfall
|
||||
+ pluginMessage.setData(brand);
|
||||
+ } finally {
|
||||
+ brand.release();
|
||||
+ }
|
||||
} catch (Exception ProtocolHacksSuck)
|
||||
{
|
||||
return;
|
||||
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 44066317..e4b97490 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
|
||||
@@ -145,11 +145,17 @@ public abstract class EntityMap
|
||||
if ( readId == oldId || readId == newId )
|
||||
{
|
||||
ByteBuf data = packet.copy();
|
||||
- packet.readerIndex( offset );
|
||||
- packet.writerIndex( offset );
|
||||
- DefinedPacket.writeVarInt( readId == oldId ? newId : oldId, packet );
|
||||
- packet.writeBytes( data );
|
||||
- data.release();
|
||||
+
|
||||
+ try
|
||||
+ {
|
||||
+ packet.readerIndex( offset );
|
||||
+ packet.writerIndex( offset );
|
||||
+ DefinedPacket.writeVarInt( readId == oldId ? newId : oldId, packet );
|
||||
+ packet.writeBytes( data );
|
||||
+ } finally
|
||||
+ {
|
||||
+ data.release();
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap_1_7_6.java b/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap_1_7_6.java
|
||||
index 6755fe84..21871d14 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap_1_7_6.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/entitymap/EntityMap_1_7_6.java
|
||||
@@ -39,19 +39,27 @@ class EntityMap_1_7_6 extends EntityMap_1_7_2
|
||||
&& profile.getProperties().length >= 1 )
|
||||
{
|
||||
ByteBuf rest = packet.copy();
|
||||
- packet.readerIndex( readerIndex );
|
||||
- packet.writerIndex( readerIndex + packetIdLength + idLength );
|
||||
- DefinedPacket.writeString( player.getUniqueId().toString(), packet );
|
||||
- DefinedPacket.writeString( username, packet );
|
||||
- DefinedPacket.writeVarInt( profile.getProperties().length, packet );
|
||||
- for ( LoginResult.Property property : profile.getProperties() )
|
||||
+
|
||||
+ try
|
||||
+ {
|
||||
+ packet.readerIndex( readerIndex );
|
||||
+ packet.writerIndex( readerIndex + packetIdLength + idLength );
|
||||
+ DefinedPacket.writeString( player.getUniqueId().toString(), packet );
|
||||
+ DefinedPacket.writeString( username, packet );
|
||||
+ DefinedPacket.writeVarInt( profile.getProperties().length, packet );
|
||||
+
|
||||
+ for ( LoginResult.Property property : profile.getProperties() )
|
||||
+ {
|
||||
+ DefinedPacket.writeString( property.getName(), packet );
|
||||
+ DefinedPacket.writeString( property.getValue(), packet );
|
||||
+ DefinedPacket.writeString( property.getSignature(), packet );
|
||||
+ }
|
||||
+
|
||||
+ packet.writeBytes( rest );
|
||||
+ } finally
|
||||
{
|
||||
- DefinedPacket.writeString( property.getName(), packet );
|
||||
- DefinedPacket.writeString( property.getValue(), packet );
|
||||
- DefinedPacket.writeString( property.getSignature(), packet );
|
||||
+ rest.release();
|
||||
}
|
||||
- packet.writeBytes( rest );
|
||||
- rest.release();
|
||||
}
|
||||
}
|
||||
}
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/forge/ForgeUtils.java b/proxy/src/main/java/net/md_5/bungee/forge/ForgeUtils.java
|
||||
index cefa0206..cede3994 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/forge/ForgeUtils.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/forge/ForgeUtils.java
|
||||
@@ -38,15 +38,22 @@ public class ForgeUtils
|
||||
{
|
||||
Map<String, String> modTags = new HashMap<>();
|
||||
ByteBuf payload = Unpooled.wrappedBuffer( pluginMessage.getData() );
|
||||
- byte discriminator = payload.readByte();
|
||||
- if ( discriminator == 2 ) // ModList
|
||||
+
|
||||
+ try
|
||||
{
|
||||
- ByteBuf buffer = payload.slice();
|
||||
- int modCount = DefinedPacket.readVarInt( buffer, 2 );
|
||||
- for ( int i = 0; i < modCount; i++ )
|
||||
+ byte discriminator = payload.readByte();
|
||||
+ if ( discriminator == 2 ) // ModList
|
||||
{
|
||||
- modTags.put( DefinedPacket.readString( buffer ), DefinedPacket.readString( buffer ) );
|
||||
+ ByteBuf buffer = payload.slice();
|
||||
+
|
||||
+ int modCount = DefinedPacket.readVarInt( buffer, 2 );
|
||||
+ for ( int i = 0; i < modCount; i++ )
|
||||
+ {
|
||||
+ modTags.put( DefinedPacket.readString( buffer ), DefinedPacket.readString( buffer ) );
|
||||
+ }
|
||||
}
|
||||
+ } finally {
|
||||
+ payload.release();
|
||||
}
|
||||
return modTags;
|
||||
}
|
||||
--
|
||||
2.31.1
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 9b03768079f2ac841fa87e3e10d3808b7bc3cae3 Mon Sep 17 00:00:00 2001
|
||||
From 3dc90158a5898f0546df38b2b55c49e949d78177 Mon Sep 17 00:00:00 2001
|
||||
From: linsaftw <25271111+linsaftw@users.noreply.github.com>
|
||||
Date: Wed, 19 May 2021 12:56:29 -0300
|
||||
Subject: [PATCH] Apply buffer limits
|
||||
|
||||
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
index fb19d5dc..7c5af95b 100644
|
||||
index 483884a4..ab9e2ab5 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
|
||||
@@ -378,6 +378,9 @@ public class BungeeCord extends ProxyServer
|
||||
@@ -370,6 +370,9 @@ public class BungeeCord extends ProxyServer
|
||||
}
|
||||
}
|
||||
};
|
||||
@ -18,7 +18,7 @@ index fb19d5dc..7c5af95b 100644
|
||||
new ServerBootstrap()
|
||||
.channel( PipelineUtils.getServerChannel( info.getSocketAddress() ) )
|
||||
.option( ChannelOption.SO_REUSEADDR, true ) // TODO: Move this elsewhere!
|
||||
@@ -385,6 +388,8 @@ public class BungeeCord extends ProxyServer
|
||||
@@ -377,6 +380,8 @@ public class BungeeCord extends ProxyServer
|
||||
.childHandler( PipelineUtils.SERVER_CHILD )
|
||||
.group( bossEventLoopGroup, workerEventLoopGroup )
|
||||
.localAddress( info.getSocketAddress() )
|
||||
@ -52,7 +52,7 @@ index 37657c4c..ba31471e 100644
|
||||
if ( ssl )
|
||||
{
|
||||
diff --git a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
index a6722b41..5de2e6ef 100644
|
||||
index 7fb1e70f..c7038164 100644
|
||||
--- a/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
+++ b/proxy/src/main/java/net/md_5/bungee/netty/PipelineUtils.java
|
||||
@@ -207,6 +207,11 @@ public class PipelineUtils
|
||||
@ -95,5 +95,5 @@ index 8becc26a..8304685c 100644
|
||||
}
|
||||
}
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
@ -1,11 +1,11 @@
|
||||
From 01ec864075a0abd0084167e9e72e632f254de58f Mon Sep 17 00:00:00 2001
|
||||
From a6622a844340dc2983b7d8da50037a4a509a038f Mon Sep 17 00:00:00 2001
|
||||
From: linsaftw <25271111+linsaftw@users.noreply.github.com>
|
||||
Date: Wed, 19 May 2021 15:40:41 -0300
|
||||
Subject: [PATCH] Limit String read
|
||||
|
||||
|
||||
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 93d17f6b..dd663e1d 100644
|
||||
index 31a95495..01484bcc 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
|
||||
@@ -36,12 +36,13 @@ public abstract class DefinedPacket
|
||||
@ -24,5 +24,5 @@ index 93d17f6b..dd663e1d 100644
|
||||
{
|
||||
if(!MinecraftDecoder.DEBUG) throw STRING_TOO_MANY_BYTES_EXCEPTION; // Waterfall start: Additional DoS mitigations
|
||||
--
|
||||
2.31.1
|
||||
2.31.1.windows.1
|
||||
|
Loading…
Reference in New Issue
Block a user