From: miniduikboot Date: Thu, 27 Jan 2022 17:24:02 +0000 (+0100) Subject: Partial revert of cc8d5d2: Readd length check X-Git-Tag: v1.7.0~13^2 X-Git-Url: https://git.deb.at/?a=commitdiff_plain;h=3f374da44bbd8708513724bbaaff1a45956e830e;p=rhonda%2Fimpostor.git Partial revert of cc8d5d2: Readd length check Oversized nicknames can cause bigger issues, so it is desireable to still block them. .Length counts codepoints, not bytes, which means that 10 character Japanese nicknames, which are configurable ingame, should still be allowed. --- diff --git a/src/Impostor.Server/Net/Manager/ClientManager.cs b/src/Impostor.Server/Net/Manager/ClientManager.cs index d25e5a1..45f0aec 100644 --- a/src/Impostor.Server/Net/Manager/ClientManager.cs +++ b/src/Impostor.Server/Net/Manager/ClientManager.cs @@ -90,6 +90,14 @@ namespace Impostor.Server.Net.Manager return; } + if (name.Length > 10) + { + using var packet = MessageWriter.Get(MessageType.Reliable); + Message01JoinGameS2C.SerializeError(packet, false, DisconnectReason.Custom, DisconnectMessages.UsernameLength); + await connection.SendAsync(packet); + return; + } + if (string.IsNullOrWhiteSpace(name)) { using var packet = MessageWriter.Get(MessageType.Reliable);