aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/CharacterHandler.cpp
diff options
context:
space:
mode:
authorMachiavelli <machiavelli.trinity@gmail.com>2013-08-29 16:43:37 +0100
committerMachiavelli <machiavelli.trinity@gmail.com>2013-08-29 16:46:28 +0100
commit59b4c3492482b7536651625f0b1ed0ef87f52e79 (patch)
tree2202ea149e9e970cccfc2ad1a309756e693a0885 /src/server/game/Handlers/CharacterHandler.cpp
parent3b71172e8a0fdda1da9e64f880cb184a7b617e93 (diff)
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.
Diffstat (limited to 'src/server/game/Handlers/CharacterHandler.cpp')
-rw-r--r--src/server/game/Handlers/CharacterHandler.cpp2
1 files changed, 2 insertions, 0 deletions
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);