Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@aebbdc9 Add proper async player disconnections
This commit is contained in:
granny
2024-10-16 22:05:50 -07:00
parent 7f490a625b
commit 4f2fe312cc
5 changed files with 11 additions and 11 deletions

View File

@@ -17,7 +17,7 @@ index c396580a9cfd86ff261bed439bb4662ae88010b5..2e45bc48c8a86d9522e4574bf3037611
// Paper start - rewrite chunk system
private ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.PlayerChunkLoaderData chunkLoader;
diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
index 6998f32f8d79dbdb6b31ffaa126602fc4a428616..2bb1c00e350497b425da63e473d7af5c67c911b8 100644
index 7174f8c89a7cdcf40ff28f6636ecfb23b13ccdaa..0b661bbfa4279cbb26c065c3ed4f2b9eb4342c4e 100644
--- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
@@ -84,6 +84,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
@@ -28,7 +28,7 @@ index 6998f32f8d79dbdb6b31ffaa126602fc4a428616..2bb1c00e350497b425da63e473d7af5c
public ServerCommonPacketListenerImpl(MinecraftServer minecraftserver, Connection networkmanager, CommonListenerCookie commonlistenercookie, ServerPlayer player) { // CraftBukkit
this.server = minecraftserver;
@@ -176,6 +177,13 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
@@ -172,6 +173,13 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t register custom payload", ex);
this.disconnect(Component.literal("Invalid payload REGISTER!"), PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Alternative Keepalive Handling
diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
index 2bb1c00e350497b425da63e473d7af5c67c911b8..9b886ebab609586f0368476331cf54cbe4bde6f1 100644
index 0b661bbfa4279cbb26c065c3ed4f2b9eb4342c4e..87e904ef07cf04d7e59c8da418c5d0458902de2d 100644
--- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
@@ -79,6 +79,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
@@ -33,7 +33,7 @@ index 2bb1c00e350497b425da63e473d7af5c67c911b8..9b886ebab609586f0368476331cf54cb
//PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); // CraftBukkit // Paper - handle ServerboundKeepAlivePacket async
if (this.keepAlivePending && packet.getId() == this.keepAliveChallenge) {
int i = (int) (Util.getMillis() - this.keepAliveTime);
@@ -266,6 +277,21 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
@@ -262,6 +273,21 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
long currentTime = Util.getMillis();
long elapsedTime = currentTime - this.keepAliveTime;
@@ -56,7 +56,7 @@ index 2bb1c00e350497b425da63e473d7af5c67c911b8..9b886ebab609586f0368476331cf54cb
if (this.keepAlivePending && !this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // Paper - check keepalive limit, don't fire if already disconnected
this.disconnect(ServerCommonPacketListenerImpl.TIMEOUT_DISCONNECTION_MESSAGE, PlayerKickEvent.Cause.TIMEOUT); // Paper - kick event cause
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 9e6bcdaa2b3dabb2a7c50034eed81f0064a2f98f..4ddeff1d34f5e3f7f9c6cfe1c517be0e2d57f86f 100644
index b4d43c293084b808d167dd02f2d6cf865ac17983..6bbd0021032d1979fc0133f6f859dddcf22c5708 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -200,6 +200,11 @@ public class PurpurConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] PlayerBookTooLargeEvent
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 58b90722df0b0dcd7c84976f510f43aa82ea795c..bbec4b963ca4b0804bce0c4cde49e1e88c0ae9f0 100644
index 5c9e35d9b645774e0d96c9a089ab071034827ea2..ef55fc102b06e6fec0c39c86a5b32d3b170e0a6f 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1188,6 +1188,10 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@@ -26,6 +26,6 @@ index 58b90722df0b0dcd7c84976f510f43aa82ea795c..bbec4b963ca4b0804bce0c4cde49e1e8
- ServerGamePacketListenerImpl.LOGGER.warn("{} tried to send a book too large. Book size: {} - Allowed: {} - Pages: {}", this.player.getScoreboardName(), byteTotal, byteAllowed, pageList.size());
+ ServerGamePacketListenerImpl.LOGGER.warn("{} tried to send too large of a book. Book size: {} - Allowed: {} - Pages: {}", this.player.getScoreboardName(), byteTotal, byteAllowed, pageList.size());
+ org.purpurmc.purpur.event.player.PlayerBookTooLargeEvent event = new org.purpurmc.purpur.event.player.PlayerBookTooLargeEvent(player.getBukkitEntity(), itemstack.asBukkitCopy()); if (event.shouldKickPlayer()) // Purpur
this.disconnect(Component.literal("Book too large!"), org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION); // Paper - kick event cause
this.disconnectAsync(Component.literal("Book too large!"), org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION); // Paper - kick event cause // Paper - add proper async disconnect
return;
}

View File

@@ -886,10 +886,10 @@ index 6f6b9dbfa8bf4d67a9157ec870a4f14a8002ac01..d8bff9a83c4c2ad1ec1e7d44aac23068
this.connection.send(new ClientboundPlayerAbilitiesPacket(this.getAbilities()));
playerlist.sendLevelInfo(this, worldserver);
diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
index 9b886ebab609586f0368476331cf54cbe4bde6f1..0d6307db1047bb5db7e33aa425fe2564cca93cfb 100644
index 87e904ef07cf04d7e59c8da418c5d0458902de2d..a9d54c80f682d826ad272731bd6477eed0fd44d5 100644
--- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
@@ -271,7 +271,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
@@ -267,7 +267,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
}
protected void keepConnectionAlive() {
@@ -898,7 +898,7 @@ index 9b886ebab609586f0368476331cf54cbe4bde6f1..0d6307db1047bb5db7e33aa425fe2564
// Paper start - give clients a longer time to respond to pings as per pre 1.12.2 timings
// This should effectively place the keepalive handling back to "as it was" before 1.12.2
long currentTime = Util.getMillis();
@@ -304,7 +304,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
@@ -300,7 +300,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
}
// Paper end - give clients a longer time to respond to pings as per pre 1.12.2 timings