From 53ee1eff0b525b5461caa726b3511b2afafe82e6 Mon Sep 17 00:00:00 2001 From: Vincent-Michael Date: Fri, 12 Sep 2014 19:51:29 +0200 Subject: Core: Fix warning --- src/server/shared/Networking/Socket.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/server') diff --git a/src/server/shared/Networking/Socket.h b/src/server/shared/Networking/Socket.h index 17f48343485..6aa7974b1c1 100644 --- a/src/server/shared/Networking/Socket.h +++ b/src/server/shared/Networking/Socket.h @@ -111,11 +111,12 @@ public: void QueuePacket(MessageBuffer&& buffer, std::unique_lock& guard) { - _writeQueue.push(std::move(buffer)); #ifdef BOOST_ASIO_HAS_IOCP AsyncProcessQueue(guard); +#else + (void)guard; #endif } -- cgit v1.2.3 From 8f5ae1fb9075a9423cdbadbd8bc226ba6bb45a0e Mon Sep 17 00:00:00 2001 From: Shauren Date: Fri, 12 Sep 2014 20:20:35 +0200 Subject: Core/Misc: Added const modifier to MessageBuffer::Write parameter --- src/server/shared/Networking/MessageBuffer.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/server') diff --git a/src/server/shared/Networking/MessageBuffer.h b/src/server/shared/Networking/MessageBuffer.h index 2115bea3f47..2dcd4fbc161 100644 --- a/src/server/shared/Networking/MessageBuffer.h +++ b/src/server/shared/Networking/MessageBuffer.h @@ -81,7 +81,7 @@ public: } } - void Write(void* data, std::size_t size) + void Write(void const* data, std::size_t size) { if (size) { -- cgit v1.2.3 From b3f7210f4d475d0d5fb208c207a738877f878a0a Mon Sep 17 00:00:00 2001 From: Shauren Date: Fri, 12 Sep 2014 20:25:13 +0200 Subject: Core/WorldSocket: Refactored client packet header check --- src/server/game/Server/WorldSocket.cpp | 4 ++-- src/server/game/Server/WorldSocket.h | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) (limited to 'src/server') diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp index f8673e5d5b7..ef92a59a73d 100644 --- a/src/server/game/Server/WorldSocket.cpp +++ b/src/server/game/Server/WorldSocket.cpp @@ -119,7 +119,7 @@ bool WorldSocket::ReadHeaderHandler() EndianConvertReverse(header->size); EndianConvert(header->cmd); - if (!header->IsValid()) + if (!header->IsValidSize() || !header->IsValidOpcode()) { if (_worldSession) { @@ -129,7 +129,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 d301e239340..3355c3d8cca 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_MSG_TYPES; } + bool IsValidSize() const { return size >= 4 && size < 10240; } + bool IsValidOpcode() const { return cmd < NUM_MSG_TYPES; } }; #pragma pack(pop) -- cgit v1.2.3