From 8c78f375667ccbcc47610a6c0a79e251a46f8377 Mon Sep 17 00:00:00 2001 From: Anuken Date: Mon, 24 Oct 2022 10:59:10 -0400 Subject: [PATCH] More tweaks to Karst / Default player limit of 30 --- core/assets/maps/karst.msav | Bin 37846 -> 37846 bytes core/src/mindustry/core/NetClient.java | 7 +++++++ core/src/mindustry/net/Administration.java | 11 ++++++++++- core/src/mindustry/net/ArcNetProvider.java | 15 ++++++++++++++- core/src/mindustry/net/NetConnection.java | 2 ++ 5 files changed, 33 insertions(+), 2 deletions(-) diff --git a/core/assets/maps/karst.msav b/core/assets/maps/karst.msav index cefbdedc9c574d4df5826da4b8586c58b186f387..49661c4b981785c49cf9d7ddfe99a3d8202a145e 100644 GIT binary patch literal 37846 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 a@0!``F8SY63A1p%d|XNDzkCOeSrY)=8w)f5 literal 37846 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 maxTextLength){ throw new ValidateException(player, "Player has sent a message above the text limit."); } diff --git a/core/src/mindustry/net/Administration.java b/core/src/mindustry/net/Administration.java index e6ed620551..917be5a98b 100644 --- a/core/src/mindustry/net/Administration.java +++ b/core/src/mindustry/net/Administration.java @@ -21,6 +21,7 @@ public class Administration{ public Seq chatFilters = new Seq<>(); public Seq actionFilters = new Seq<>(); public Seq subnetBans = new Seq<>(); + public ObjectSet dosBlacklist = new ObjectSet<>(); public ObjectMap kickedIPs = new ObjectMap<>(); /** All player info. Maps UUIDs to info. This persists throughout restarts. Do not access directly. */ @@ -83,6 +84,14 @@ public class Administration{ }); } + public synchronized void blacklistDos(String address){ + dosBlacklist.add(address); + } + + public synchronized boolean isDosBlacklisted(String address){ + return dosBlacklist.contains(address); + } + /** @return time at which a player would be pardoned for a kick (0 means they were never kicked) */ public long getKickTime(String uuid, String ip){ return Math.max(getInfo(uuid).lastKicked, kickedIPs.get(ip, 0L)); @@ -162,7 +171,7 @@ public class Administration{ } public int getPlayerLimit(){ - return Core.settings.getInt("playerlimit", 0); + return Core.settings.getInt("playerlimit", headless ? 30 : 0); } public void setPlayerLimit(int limit){ diff --git a/core/src/mindustry/net/ArcNetProvider.java b/core/src/mindustry/net/ArcNetProvider.java index a9fac3cbb7..402c24b79c 100644 --- a/core/src/mindustry/net/ArcNetProvider.java +++ b/core/src/mindustry/net/ArcNetProvider.java @@ -11,6 +11,7 @@ import arc.util.*; import arc.util.Log.*; import arc.util.io.*; import mindustry.*; +import mindustry.game.EventType.*; import mindustry.net.Net.*; import mindustry.net.Packets.*; import net.jpountz.lz4.*; @@ -19,7 +20,6 @@ import java.io.*; import java.net.*; import java.nio.*; import java.nio.channels.*; -import java.util.*; import java.util.concurrent.*; import static mindustry.Vars.*; @@ -35,6 +35,8 @@ public class ArcNetProvider implements NetProvider{ private static final LZ4FastDecompressor decompressor = LZ4Factory.fastestInstance().fastDecompressor(); private static final LZ4Compressor compressor = LZ4Factory.fastestInstance().fastCompressor(); + private volatile int playerLimitCache; + public ArcNetProvider(){ ArcNet.errorHandler = e -> { if(Log.level == LogLevel.debug){ @@ -42,6 +44,11 @@ public class ArcNetProvider implements NetProvider{ } }; + //fetch this in the main thread to prevent threading issues + Events.run(Trigger.update, () -> { + playerLimitCache = netServer.admins.getPlayerLimit(); + }); + client = new Client(8192, 8192, new PacketSerializer()); client.setDiscoveryPacket(packetSupplier); client.addListener(new NetListener(){ @@ -94,6 +101,12 @@ public class ArcNetProvider implements NetProvider{ public void connected(Connection connection){ String ip = connection.getRemoteAddressTCP().getAddress().getHostAddress(); + //kill connections above the limit to prevent spam + if((playerLimitCache > 0 && server.getConnections().length > playerLimitCache) || netServer.admins.isDosBlacklisted(ip)){ + connection.close(DcReason.closed); + return; + } + ArcConnection kn = new ArcConnection(ip, connection); Connect c = new Connect(); diff --git a/core/src/mindustry/net/NetConnection.java b/core/src/mindustry/net/NetConnection.java index eb43dc84f1..4d34e2702a 100644 --- a/core/src/mindustry/net/NetConnection.java +++ b/core/src/mindustry/net/NetConnection.java @@ -28,6 +28,8 @@ public abstract class NetConnection{ public long lastReceivedClientTime; /** Build requests that have been recently rejected. This is cleared every snapshot. */ public Seq rejectedRequests = new Seq<>(); + /** Handles chat spam rate limits. */ + public Ratekeeper chatRate = new Ratekeeper(); public boolean hasConnected, hasBegunConnecting, hasDisconnected; public float viewWidth, viewHeight, viewX, viewY;