mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-18 08:57:44 +01:00
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@294347b [ci skip] Cleanup events (#10202) PaperMC/Paper@87ce7c7 Small refactor of Paper plugin context preparation PaperMC/Paper@7f856a1 Fix sleeping pos desync PaperMC/Paper@8bc5be8 Add missing catch PaperMC/Paper@c5d168c More provider source fixup
35 lines
1.9 KiB
Diff
35 lines
1.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: BillyGalbreath <blake.galbreath@gmail.com>
|
|
Date: Sat, 1 Jan 2022 18:38:58 -0600
|
|
Subject: [PATCH] Configurable valid characters for usernames
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
index d9b12e2b4e5d3039bde74a847a484c0dae319a92..ec4ca16e4f7307b9993717fefc48c305a1f58418 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
@@ -2420,6 +2420,7 @@ public abstract class Player extends LivingEntity {
|
|
}
|
|
|
|
public static boolean isValidUsername(String name) {
|
|
+ if (true) return org.purpurmc.purpur.PurpurConfig.usernameValidCharactersPattern.matcher(name).matches(); // Purpur
|
|
// Paper start - username validation overriding
|
|
if (name == null || name.isEmpty() || name.length() > 16) {
|
|
return false;
|
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
|
index fe5a35568fdcd24c5020f003f85f3b4d3b4ac631..e24cd4274bfe7d8694a91f74a2f4674befb13bd6 100644
|
|
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
|
@@ -452,4 +452,11 @@ public class PurpurConfig {
|
|
private static void networkSettings() {
|
|
useUPnP = getBoolean("settings.network.upnp-port-forwarding", useUPnP);
|
|
}
|
|
+
|
|
+ public static java.util.regex.Pattern usernameValidCharactersPattern;
|
|
+ private static void usernameValidationSettings() {
|
|
+ String defaultPattern = "^[a-zA-Z0-9_.]*$";
|
|
+ String setPattern = getString("settings.username-valid-characters", defaultPattern);
|
|
+ usernameValidCharactersPattern = java.util.regex.Pattern.compile(setPattern == null || setPattern.isBlank() ? defaultPattern : setPattern);
|
|
+ }
|
|
}
|