summaryrefslogtreecommitdiffstats
path: root/src/main/java/net/minecraft/server/ThreadPlayerLookupUUID.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/minecraft/server/ThreadPlayerLookupUUID.java')
-rw-r--r--src/main/java/net/minecraft/server/ThreadPlayerLookupUUID.java37
1 files changed, 25 insertions, 12 deletions
diff --git a/src/main/java/net/minecraft/server/ThreadPlayerLookupUUID.java b/src/main/java/net/minecraft/server/ThreadPlayerLookupUUID.java
index 496b7c98..6b91be70 100644
--- a/src/main/java/net/minecraft/server/ThreadPlayerLookupUUID.java
+++ b/src/main/java/net/minecraft/server/ThreadPlayerLookupUUID.java
@@ -1,6 +1,7 @@
package net.minecraft.server;
import java.math.BigInteger;
+import java.util.UUID;
import net.minecraft.util.com.mojang.authlib.GameProfile;
import net.minecraft.util.com.mojang.authlib.exceptions.AuthenticationUnavailableException;
@@ -21,20 +22,22 @@ class ThreadPlayerLookupUUID extends Thread {
}
public void run() {
+ GameProfile gameprofile = LoginListener.a(this.a);
+
try {
- String s = (new BigInteger(MinecraftEncryption.a(LoginListener.a(this.a), LoginListener.b(this.a).J().getPublic(), LoginListener.c(this.a)))).toString(16);
+ String s = (new BigInteger(MinecraftEncryption.a(LoginListener.b(this.a), LoginListener.c(this.a).K().getPublic(), LoginListener.d(this.a)))).toString(16);
- LoginListener.a(this.a, LoginListener.b(this.a).at().hasJoinedServer(new GameProfile((String) null, LoginListener.d(this.a).getName()), s));
- if (LoginListener.d(this.a) != null) {
+ LoginListener.a(this.a, LoginListener.c(this.a).av().hasJoinedServer(new GameProfile((UUID) null, gameprofile.getName()), s));
+ if (LoginListener.a(this.a) != null) {
// CraftBukkit start - fire PlayerPreLoginEvent
if (!this.a.networkManager.isConnected()) {
return;
}
- String playerName = LoginListener.d(this.a).getName();
+ String playerName = LoginListener.a(this.a).getName();
java.net.InetAddress address = ((java.net.InetSocketAddress) a.networkManager.getSocketAddress()).getAddress();
- java.util.UUID uniqueId = UtilUUID.b(LoginListener.d(this.a).getId());
- final org.bukkit.craftbukkit.CraftServer server = LoginListener.b(this.a).server;
+ java.util.UUID uniqueId = LoginListener.a(this.a).getId();
+ final org.bukkit.craftbukkit.CraftServer server = LoginListener.c(this.a).server;
AsyncPlayerPreLoginEvent asyncEvent = new AsyncPlayerPreLoginEvent(playerName, address, uniqueId);
server.getPluginManager().callEvent(asyncEvent);
@@ -51,7 +54,7 @@ class ThreadPlayerLookupUUID extends Thread {
return event.getResult();
}};
- LoginListener.b(this.a).processQueue.add(waitable);
+ LoginListener.c(this.a).processQueue.add(waitable);
if (waitable.get() != PlayerPreLoginEvent.Result.ALLOWED) {
this.a.disconnect(event.getKickMessage());
return;
@@ -64,19 +67,29 @@ class ThreadPlayerLookupUUID extends Thread {
}
// CraftBukkit end
- LoginListener.e().info("UUID of player " + LoginListener.d(this.a).getName() + " is " + LoginListener.d(this.a).getId());
+ LoginListener.e().info("UUID of player " + LoginListener.a(this.a).getName() + " is " + LoginListener.a(this.a).getId());
+ LoginListener.a(this.a, EnumProtocolState.READY_TO_ACCEPT);
+ } else if (LoginListener.c(this.a).N()) {
+ LoginListener.e().warn("Failed to verify username but will let them in anyway!");
+ LoginListener.a(this.a, this.a.a(gameprofile));
LoginListener.a(this.a, EnumProtocolState.READY_TO_ACCEPT);
} else {
this.a.disconnect("Failed to verify username!");
- LoginListener.e().error("Username \'" + LoginListener.d(this.a).getName() + "\' tried to join with an invalid session");
+ LoginListener.e().error("Username \'" + LoginListener.a(this.a).getName() + "\' tried to join with an invalid session");
}
} catch (AuthenticationUnavailableException authenticationunavailableexception) {
- this.a.disconnect("Authentication servers are down. Please try again later, sorry!");
- LoginListener.e().error("Couldn\'t verify username because servers are unavailable");
+ if (LoginListener.c(this.a).N()) {
+ LoginListener.e().warn("Authentication servers are down but will let them in anyway!");
+ LoginListener.a(this.a, this.a.a(gameprofile));
+ LoginListener.a(this.a, EnumProtocolState.READY_TO_ACCEPT);
+ } else {
+ this.a.disconnect("Authentication servers are down. Please try again later, sorry!");
+ LoginListener.e().error("Couldn\'t verify username because servers are unavailable");
+ }
// CraftBukkit start - catch all exceptions
} catch (Exception exception) {
this.a.disconnect("Failed to verify username!");
- LoginListener.b(this.a).server.getLogger().log(java.util.logging.Level.WARNING, "Exception verifying " + LoginListener.d(this.a).getName(), exception);
+ LoginListener.c(this.a).server.getLogger().log(java.util.logging.Level.WARNING, "Exception verifying " + LoginListener.a(this.a).getName(), exception);
// CraftBukkit end
}
}