@@ -4,8 +4,25 @@ Date: Sat, 1 Jan 2022 05:19:37 -0800
44Subject: [PATCH] Validate usernames
55
66
7+ diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
8+ index d5aa95846e7f52108a03e3731023527281b21d73..1d3cc8836d2ccbec4a8660f86501be35c76e8b0b 100644
9+ --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
10+ +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
11+ @@ -493,6 +493,12 @@ public class PaperConfig {
12+ set("settings.unsupported-settings.allow-tnt-duplication", null);
13+ }
14+
15+ + public static boolean performUsernameValidation;
16+ + private static void performUsernameValidation() {
17+ + performUsernameValidation = getBoolean("settings.unsupported-settings.perform-username-validation", true);
18+ + }
19+ +
20+ +
21+ public static int playerAutoSaveRate = -1;
22+ public static int maxPlayerAutoSavePerTick = 10;
23+ private static void playerAutoSaveRate() {
724diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
8- index 33a29890435d6065a2cc4f8e8bf8209c01d5d114..96593919db8b140e55fe1a120c2835b679771e92 100644
25+ index 33a29890435d6065a2cc4f8e8bf8209c01d5d114..462d8c36166c63a4dc8fa74ac7f82859e6f4b83a 100644
926--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
1027+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
1128@@ -230,10 +230,38 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener
@@ -37,7 +54,7 @@ index 33a29890435d6065a2cc4f8e8bf8209c01d5d114..96593919db8b140e55fe1a120c2835b6
3754 Validate.validState(this.state == ServerLoginPacketListenerImpl.State.HELLO, "Unexpected hello packet", new Object[0]);
3855 this.gameProfile = packet.getGameProfile();
3956+ // Paper start - validate usernames
40- + if (com.destroystokyo.paper.PaperConfig.isProxyOnlineMode()) {
57+ + if (com.destroystokyo.paper.PaperConfig.isProxyOnlineMode() && com.destroystokyo.paper.PaperConfig.performUsernameValidation ) {
4158+ if (!validateUsername(this.gameProfile.getName())) {
4259+ ServerLoginPacketListenerImpl.this.disconnect("Failed to verify username!");
4360+ return;
0 commit comments