From 59b4c3492482b7536651625f0b1ed0ef87f52e79 Mon Sep 17 00:00:00 2001 From: Machiavelli Date: Thu, 29 Aug 2013 16:43:37 +0100 Subject: Core/NetworkIO: Generic packet spam solution Currently regulates the usage of CMSG_CHAR_ENUM only, but can be easily extended to detect inappropriate network behaviour by using AntiDOS.AllowOpcode in WorldSession's handlers. --- src/server/game/Handlers/CharacterHandler.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/server/game/Handlers/CharacterHandler.cpp') diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp index 0554820364d..aa766d5b1ac 100644 --- a/src/server/game/Handlers/CharacterHandler.cpp +++ b/src/server/game/Handlers/CharacterHandler.cpp @@ -243,6 +243,8 @@ void WorldSession::HandleCharEnum(PreparedQueryResult result) void WorldSession::HandleCharEnumOpcode(WorldPacket & /*recvData*/) { + AntiDOS.AllowOpcode(CMSG_CHAR_ENUM, false); + // remove expired bans PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_EXPIRED_BANS); CharacterDatabase.Execute(stmt); -- cgit v1.2.3