From 79d9e3630341c54d3eb064550f82248cd4c111ca Mon Sep 17 00:00:00 2001 From: md_5 Date: Tue, 2 Jul 2013 15:06:15 +1000 Subject: [PATCH] Return of the Netty... dun dun dun --- CraftBukkit-Patches/0002-mc-dev-imports.patch | 61 ++++++++++++++++- CraftBukkit-Patches/0024-Netty.patch | 65 +++++++++++-------- .../0060-Really-Disable-Netty.patch | 22 ------- 3 files changed, 98 insertions(+), 50 deletions(-) delete mode 100644 CraftBukkit-Patches/0060-Really-Disable-Netty.patch diff --git a/CraftBukkit-Patches/0002-mc-dev-imports.patch b/CraftBukkit-Patches/0002-mc-dev-imports.patch index fefd10553..7d2434449 100644 --- a/CraftBukkit-Patches/0002-mc-dev-imports.patch +++ b/CraftBukkit-Patches/0002-mc-dev-imports.patch @@ -1,4 +1,4 @@ -From d1aafbeed41761872184e2f9d161b1faecd818f0 Mon Sep 17 00:00:00 2001 +From d4173f0bd000a1152b28e206169701f250ffc058 Mon Sep 17 00:00:00 2001 From: md_5 Date: Tue, 2 Jul 2013 13:13:29 +1000 Subject: [PATCH] mc-dev imports @@ -317,6 +317,65 @@ index 0000000..53c1cb5 + } + } +} +diff --git a/src/main/java/net/minecraft/server/Packet254GetInfo.java b/src/main/java/net/minecraft/server/Packet254GetInfo.java +new file mode 100644 +index 0000000..9afa795 +--- /dev/null ++++ b/src/main/java/net/minecraft/server/Packet254GetInfo.java +@@ -0,0 +1,53 @@ ++package net.minecraft.server; ++ ++import java.io.DataInput; ++import java.io.DataOutput; ++ ++public class Packet254GetInfo extends Packet { ++ ++ private static final int d = (new Packet250CustomPayload()).n(); ++ public int a; ++ public String b; ++ public int c; ++ ++ public Packet254GetInfo() {} ++ ++ public void a(DataInput datainput) throws java.io.IOException { // Spigot - throws ++ try { ++ datainput.readByte(); ++ datainput.readByte(); ++ a(datainput, 255); ++ datainput.readShort(); ++ this.a = datainput.readByte(); ++ if (this.a >= 73) { ++ this.b = a(datainput, 255); ++ this.c = datainput.readInt(); ++ } ++ } catch (Throwable throwable) { ++ this.a = 0; ++ this.b = ""; ++ } ++ } ++ ++ public void a(DataOutput dataoutput) throws java.io.IOException { // Spigot - throws ++ dataoutput.writeByte(1); ++ dataoutput.writeByte(d); ++ Packet.a("MC|PingHost", dataoutput); ++ dataoutput.writeShort(3 + 2 * this.b.length() + 4); ++ dataoutput.writeByte(this.a); ++ Packet.a(this.b, dataoutput); ++ dataoutput.writeInt(this.c); ++ } ++ ++ public void handle(Connection connection) { ++ connection.a(this); ++ } ++ ++ public int a() { ++ return 3 + this.b.length() * 2 + 4; ++ } ++ ++ public boolean d() { ++ return this.a == 0; ++ } ++} diff --git a/src/main/java/net/minecraft/server/Packet63WorldParticles.java b/src/main/java/net/minecraft/server/Packet63WorldParticles.java new file mode 100644 index 0000000..f036c53 diff --git a/CraftBukkit-Patches/0024-Netty.patch b/CraftBukkit-Patches/0024-Netty.patch index f29b76d9f..93e2bae5a 100644 --- a/CraftBukkit-Patches/0024-Netty.patch +++ b/CraftBukkit-Patches/0024-Netty.patch @@ -1,4 +1,4 @@ -From eabbbdf2f175c602d04575c0d90062bba6e316b2 Mon Sep 17 00:00:00 2001 +From dec4a7481c02848ccfee73ae5800132d7480268f Mon Sep 17 00:00:00 2001 From: md_5 Date: Tue, 2 Jul 2013 09:06:29 +1000 Subject: [PATCH] Netty @@ -94,6 +94,19 @@ index c60abf1..e1b259b 100644 + + public void setSocketAddress(SocketAddress address) { k = address; } // Spigot } +diff --git a/src/main/java/net/minecraft/server/Packet254GetInfo.java b/src/main/java/net/minecraft/server/Packet254GetInfo.java +index 9afa795..32704e8 100644 +--- a/src/main/java/net/minecraft/server/Packet254GetInfo.java ++++ b/src/main/java/net/minecraft/server/Packet254GetInfo.java +@@ -23,7 +23,7 @@ public class Packet254GetInfo extends Packet { + this.b = a(datainput, 255); + this.c = datainput.readInt(); + } +- } catch (Throwable throwable) { ++ } catch (java.io.IOException throwable) { // Spigot Throwable -> IOException + this.a = 0; + this.b = ""; + } diff --git a/src/main/java/net/minecraft/server/PendingConnection.java b/src/main/java/net/minecraft/server/PendingConnection.java index 252cea7..d07973d 100644 --- a/src/main/java/net/minecraft/server/PendingConnection.java @@ -1166,10 +1179,10 @@ index 0000000..5da8a59 +} diff --git a/src/main/java/org/spigotmc/netty/PacketDecoder.java b/src/main/java/org/spigotmc/netty/PacketDecoder.java new file mode 100644 -index 0000000..b955914 +index 0000000..0860655 --- /dev/null +++ b/src/main/java/org/spigotmc/netty/PacketDecoder.java -@@ -0,0 +1,69 @@ +@@ -0,0 +1,67 @@ +package org.spigotmc.netty; + +import io.netty.buffer.ByteBuf; @@ -1208,34 +1221,32 @@ index 0000000..b955914 + input = new ByteBufInputStream( in ); + } + -+ while ( true ) ++ try + { -+ switch ( state() ) ++ while ( true ) + { -+ case HEADER: -+ int packetId = input.readUnsignedByte(); -+ packet = Packet.a( MinecraftServer.getServer().getLogger(), packetId ); -+ if ( packet == null ) -+ { -+ throw new IOException( "Bad packet id " + packetId ); -+ } -+ checkpoint( ReadState.DATA ); -+ case DATA: -+ try -+ { ++ switch ( state() ) ++ { ++ case HEADER: ++ int packetId = input.readUnsignedByte(); ++ packet = Packet.a( MinecraftServer.getServer().getLogger(), packetId ); ++ if ( packet == null ) ++ { ++ throw new IOException( "Bad packet id " + packetId ); ++ } ++ checkpoint( ReadState.DATA ); ++ case DATA: + packet.a( input ); -+ } catch ( EOFException ex ) -+ { -+ return; -+ } -+ -+ checkpoint( ReadState.HEADER ); -+ out.add( packet ); -+ packet = null; -+ break; -+ default: -+ throw new IllegalStateException(); ++ checkpoint( ReadState.HEADER ); ++ out.add( packet ); ++ packet = null; ++ break; ++ default: ++ throw new IllegalStateException(); ++ } + } ++ } catch ( EOFException ex ) ++ { + } + } +} diff --git a/CraftBukkit-Patches/0060-Really-Disable-Netty.patch b/CraftBukkit-Patches/0060-Really-Disable-Netty.patch deleted file mode 100644 index 6204087b6..000000000 --- a/CraftBukkit-Patches/0060-Really-Disable-Netty.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 314e1a289073e5ffdd6853a686121a1eacaf6d53 Mon Sep 17 00:00:00 2001 -From: md_5 -Date: Tue, 2 Jul 2013 14:30:00 +1000 -Subject: [PATCH] Really Disable Netty - - -diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index ccbd6bc..fead3d5 100644 ---- a/src/main/java/net/minecraft/server/DedicatedServer.java -+++ b/src/main/java/net/minecraft/server/DedicatedServer.java -@@ -101,7 +101,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer - - try { - // Spigot start -- this.s = ( org.spigotmc.SpigotConfig.listeners.get( 0 ).netty ) -+ this.s = ( false ) - ? new org.spigotmc.netty.NettyServerConnection( this, inetaddress, this.I() ) - : new DedicatedServerConnection( this, inetaddress, this.I() ); - // Spigot end --- -1.8.1.2 -