Implement "Hide player IPs"

This commit is contained in:
Etil
2021-09-18 16:43:36 +02:00
parent 1ec66e38dd
commit f0c8edb487

View File

@@ -0,0 +1,71 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Etil <81570777+etil2jz@users.noreply.github.com>
Date: Sat, 18 Sep 2021 16:43:11 +0200
Subject: [PATCH] Hide player IPs
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
index 01fee879c946b6640da34d5890d686f0152437dc..76c2f4b24e16c7d641ae1945b0ef94a6e854b342 100644
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
@@ -10,12 +10,14 @@ import java.net.InetSocketAddress;
import java.net.SocketAddress;
import java.security.PrivateKey;
import java.util.Arrays;
+import java.util.Objects;
import java.util.Random;
import java.util.UUID;
import java.util.concurrent.atomic.AtomicInteger;
import javax.annotation.Nullable;
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
+import xyz.arthurb.mirai.MiraiConfig;
import net.minecraft.DefaultUncaughtExceptionHandler;
import net.minecraft.network.Connection;
import net.minecraft.network.FriendlyByteBuf;
@@ -223,6 +225,10 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener
}
public String getUserName() {
+ // Mirai start
+ if (MiraiConfig.hidePlayerIps) {
+ return Objects.toString(this.gameProfile);
+ }
return this.gameProfile != null ? this.gameProfile + " (" + this.connection.getRemoteAddress() + ")" : String.valueOf(this.connection.getRemoteAddress());
}
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index c560b0cf408467a913b0965bc97eed9d6d63897c..9dea6afb7fd90ff58970a5fe130fb14d2cdc991d 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -7,6 +7,7 @@ import com.google.common.collect.Sets;
import com.mojang.authlib.GameProfile;
import com.mojang.serialization.DataResult;
import com.mojang.serialization.Dynamic;
+import xyz.arthurb.mirai.MiraiConfig;
import io.netty.buffer.Unpooled;
import io.papermc.paper.adventure.PaperAdventure;
import java.io.File;
@@ -486,11 +487,17 @@ public abstract class PlayerList {
// CraftBukkit - Moved from above, added world
// Yatopia start - log player login location
- if (xyz.arthurb.mirai.MiraiConfig.logPlayerLoginLoc) {
- PlayerList.LOGGER.info("{}[{}] logged in with entity id {} at ([{}]{}, {}, {})", player.getName().getString(), s1, player.getId(), worldserver1.serverLevelData.getLevelName(), player.getX(), player.getY(), player.getZ());
- } else {
- PlayerList.LOGGER.info("{}[{}] logged in with entity id {}", player.getName().getString(), s1, player.getId());
- }
+ // Mirai start - hide player ips
+ if (xyz.arthurb.mirai.MiraiConfig.logPlayerLoginLoc && MiraiConfig.hidePlayerIps) {
+ PlayerList.LOGGER.info("{} logged in with entity id {} at ([{}]{}, {}, {})", player.getName().getString(), player.getId(), worldserver1.serverLevelData.getLevelName(), player.getX(), player.getY(), player.getZ());
+ } else if (xyz.arthurb.mirai.MiraiConfig.logPlayerLoginLoc) {
+ PlayerList.LOGGER.info("{}[{}] logged in with entity id {} at ([{}]{}, {}, {})", player.getName().getString(), s1, player.getId(), worldserver1.serverLevelData.getLevelName(), player.getX(), player.getY(), player.getZ());
+ } else if (MiraiConfig.hidePlayerIps) {
+ PlayerList.LOGGER.info("{} logged in with entity id {}", player.getName().getString(), player.getId());
+ } else {
+ PlayerList.LOGGER.info("{}[{}] logged in with entity id {}", player.getName().getString(), s1, player.getId());
+ }
+ // Mirai end - hide player ips
// Yatopia end - log player login location
}