From a8a9f84e87baebe6b91de88d70303ee2655d6273 Mon Sep 17 00:00:00 2001 From: John <30979070+MCMDEV@users.noreply.github.com> Date: Wed, 12 Jan 2022 18:21:29 +0100 Subject: [PATCH] Added getHostname to AsyncPlayerPreLoginEvent (#6656) --- ...Hostname-to-AsyncPlayerPreLoginEvent.patch | 61 +++++++++++++++++++ ...Hostname-to-AsyncPlayerPreLoginEvent.patch | 19 ++++++ 2 files changed, 80 insertions(+) create mode 100644 patches/api/Added-getHostname-to-AsyncPlayerPreLoginEvent.patch create mode 100644 patches/server/Added-getHostname-to-AsyncPlayerPreLoginEvent.patch diff --git a/patches/api/Added-getHostname-to-AsyncPlayerPreLoginEvent.patch b/patches/api/Added-getHostname-to-AsyncPlayerPreLoginEvent.patch new file mode 100644 index 0000000000..ef3e9dcd6e --- /dev/null +++ b/patches/api/Added-getHostname-to-AsyncPlayerPreLoginEvent.patch @@ -0,0 +1,61 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: MCMDEV +Date: Fri, 24 Sep 2021 17:59:23 +0200 +Subject: [PATCH] Added getHostname to AsyncPlayerPreLoginEvent + + +diff --git a/src/main/java/org/bukkit/event/player/AsyncPlayerPreLoginEvent.java b/src/main/java/org/bukkit/event/player/AsyncPlayerPreLoginEvent.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/org/bukkit/event/player/AsyncPlayerPreLoginEvent.java ++++ b/src/main/java/org/bukkit/event/player/AsyncPlayerPreLoginEvent.java +@@ -0,0 +0,0 @@ public class AsyncPlayerPreLoginEvent extends Event { + private final InetAddress ipAddress; + private final InetAddress rawAddress; // Paper + //private UUID uniqueId; // Paper - Not used anymore ++ private final String hostname; // Paper + + @Deprecated + public AsyncPlayerPreLoginEvent(@NotNull final String name, @NotNull final InetAddress ipAddress) { +@@ -0,0 +0,0 @@ public class AsyncPlayerPreLoginEvent extends Event { + this(name, ipAddress, ipAddress, uniqueId, profile); + } + ++ @Deprecated // Paper - Add hostname + public AsyncPlayerPreLoginEvent(@NotNull final String name, @NotNull final InetAddress ipAddress, @NotNull final InetAddress rawAddress, @NotNull final UUID uniqueId, @NotNull PlayerProfile profile) { ++ // Paper start - Add hostname ++ this(name, ipAddress, rawAddress, uniqueId, profile, ""); ++ } ++ ++ public AsyncPlayerPreLoginEvent(@NotNull final String name, @NotNull final InetAddress ipAddress, @NotNull final InetAddress rawAddress, @NotNull final UUID uniqueId, @NotNull PlayerProfile profile, @NotNull String hostname) { ++ // Paper end - Add hostname + super(true); + this.profile = profile; + // Paper end +@@ -0,0 +0,0 @@ public class AsyncPlayerPreLoginEvent extends Event { + this.ipAddress = ipAddress; + this.rawAddress = rawAddress; // Paper + //this.uniqueId = uniqueId; // Paper - Not used anymore ++ this.hostname = hostname; // Paper - Add hostname + } + + /** +@@ -0,0 +0,0 @@ public class AsyncPlayerPreLoginEvent extends Event { + return profile.getId(); // Paper + } + ++ // Paper start ++ /** ++ * Gets the hostname that the player used to connect to the server, or ++ * blank if unknown ++ * ++ * @return The hostname ++ */ ++ @NotNull ++ public String getHostname() { ++ return hostname; ++ } ++ // Paper end ++ + @NotNull + @Override + public HandlerList getHandlers() { diff --git a/patches/server/Added-getHostname-to-AsyncPlayerPreLoginEvent.patch b/patches/server/Added-getHostname-to-AsyncPlayerPreLoginEvent.patch new file mode 100644 index 0000000000..524558d70c --- /dev/null +++ b/patches/server/Added-getHostname-to-AsyncPlayerPreLoginEvent.patch @@ -0,0 +1,19 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: MCMDEV +Date: Fri, 24 Sep 2021 17:59:21 +0200 +Subject: [PATCH] Added getHostname to AsyncPlayerPreLoginEvent + + +diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java ++++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +@@ -0,0 +0,0 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener + + // Paper start + PlayerProfile profile = CraftPlayerProfile.asBukkitMirror(ServerLoginPacketListenerImpl.this.gameProfile); +- AsyncPlayerPreLoginEvent asyncEvent = new AsyncPlayerPreLoginEvent(playerName, address, rawAddress, uniqueId, profile); ++ AsyncPlayerPreLoginEvent asyncEvent = new AsyncPlayerPreLoginEvent(playerName, address, rawAddress, uniqueId, profile, ServerLoginPacketListenerImpl.this.hostname); + server.getPluginManager().callEvent(asyncEvent); + profile = asyncEvent.getPlayerProfile(); + profile.complete(true);