aboutsummaryrefslogtreecommitdiff
path: root/src/server/game
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2014-09-12 20:27:46 +0200
committerShauren <shauren.trinity@gmail.com>2014-09-12 20:27:46 +0200
commitde4aea093bdb7bba5a3c2aad98a52dfa7d5071e2 (patch)
tree1cdcd255f1d2c1fbd05b5ea463d097b1ae353a30 /src/server/game
parent7f2cdfd166d99efdd308f0b4d195a6b972092dd9 (diff)
parentb3f7210f4d475d0d5fb208c207a738877f878a0a (diff)
Merge branch 'master' of https://github.com/TrinityCore/TrinityCore into 4.3.4
Conflicts: src/server/game/Server/WorldSocket.h
Diffstat (limited to 'src/server/game')
-rw-r--r--src/server/game/Server/WorldSocket.cpp4
-rw-r--r--src/server/game/Server/WorldSocket.h3
2 files changed, 4 insertions, 3 deletions
diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp
index 6cf406f21fa..cb42732b464 100644
--- a/src/server/game/Server/WorldSocket.cpp
+++ b/src/server/game/Server/WorldSocket.cpp
@@ -131,7 +131,7 @@ bool WorldSocket::ReadHeaderHandler()
EndianConvertReverse(header->size);
EndianConvert(header->cmd);
- if (!header->IsValid())
+ if (!header->IsValidSize() || !header->IsValidOpcode())
{
if (_worldSession)
{
@@ -141,7 +141,7 @@ bool WorldSocket::ReadHeaderHandler()
}
else
TC_LOG_ERROR("network", "WorldSocket::ReadHeaderHandler(): client %s sent malformed packet (size: %hu, cmd: %u)",
- GetRemoteIpAddress().to_string().c_str(), header->size, header->cmd);
+ GetRemoteIpAddress().to_string().c_str(), header->size, header->cmd);
CloseSocket();
return false;
diff --git a/src/server/game/Server/WorldSocket.h b/src/server/game/Server/WorldSocket.h
index 6ba76584909..46614afd3bd 100644
--- a/src/server/game/Server/WorldSocket.h
+++ b/src/server/game/Server/WorldSocket.h
@@ -39,7 +39,8 @@ struct ClientPktHeader
uint16 size;
uint32 cmd;
- bool IsValid() const { return size >= 4 && size < 10240 && cmd < NUM_OPCODE_HANDLERS; }
+ bool IsValidSize() const { return size >= 4 && size < 10240; }
+ bool IsValidOpcode() const { return cmd < NUM_OPCODE_HANDLERS; }
};
#pragma pack(pop)