From b78ea17d68309c373893e380d143fa787b390778 Mon Sep 17 00:00:00 2001 From: Deathmax Date: Sat, 3 Dec 2011 10:25:57 +0800 Subject: [PATCH] Fix death text exploit. --- TShockAPI/GetDataHandlers.cs | 14 ++++++++++++++ TShockAPI/Properties/AssemblyInfo.cs | 4 ++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index fcb59bb7..91d42967 100644 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -506,6 +506,20 @@ namespace TShockAPI private static bool HandlePlayerKillMe(GetDataHandlerArgs args) { byte id = args.Data.ReadInt8(); + byte direction = args.Data.ReadInt8(); + short dmg = args.Data.ReadInt16(); + bool pvp = args.Data.ReadInt8() == 0; + int textlength = (int)(args.Data.Length - args.Data.Position - 1); + string deathtext = ""; + if (textlength > 0) + { + deathtext = Encoding.ASCII.GetString(args.Data.ReadBytes(textlength)); + if (!TShock.Utils.ValidString(deathtext)) + { + TShock.Utils.HandleGriefer(args.Player, "Death text exploit."); + return true; + } + } if (id != args.Player.Index) { return TShock.Utils.HandleGriefer(args.Player, TShock.Config.KillMeAbuseReason); diff --git a/TShockAPI/Properties/AssemblyInfo.cs b/TShockAPI/Properties/AssemblyInfo.cs index 736a837d..8182e641 100644 --- a/TShockAPI/Properties/AssemblyInfo.cs +++ b/TShockAPI/Properties/AssemblyInfo.cs @@ -36,5 +36,5 @@ using System.Runtime.InteropServices; // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("3.3.4.1202")] -[assembly: AssemblyFileVersion("3.3.4.1202")] +[assembly: AssemblyVersion("3.3.4.1203")] +[assembly: AssemblyFileVersion("3.3.4.1203")]