aboutsummaryrefslogtreecommitdiff
path: root/src/server/authserver/Server/BattlenetSession.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/authserver/Server/BattlenetSession.h')
-rw-r--r--src/server/authserver/Server/BattlenetSession.h18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/server/authserver/Server/BattlenetSession.h b/src/server/authserver/Server/BattlenetSession.h
index 705aa468a4c..afd0b5fe0b3 100644
--- a/src/server/authserver/Server/BattlenetSession.h
+++ b/src/server/authserver/Server/BattlenetSession.h
@@ -51,10 +51,11 @@ namespace Battlenet
Read = 0x4000
};
- class Session : public std::enable_shared_from_this<Session>
+ class Session : public Socket<Session, ServerPacket*>
{
- public:
+ typedef Socket<Session, ServerPacket*> Base;
+ public:
explicit Session(tcp::socket&& socket);
~Session();
@@ -74,11 +75,14 @@ namespace Battlenet
bool HandleRealmUpdateSubscribe(PacketHeader& header, BitStream& packet);
bool HandleRealmJoinRequest(PacketHeader& header, BitStream& packet);
- void Start();
- void AsyncRead();
+ void Start() override;
void AsyncWrite(ServerPacket* packet);
+ protected:
+ void ReadHeaderHandler(boost::system::error_code error, size_t transferedBytes) override;
+ void ReadDataHandler(boost::system::error_code /*error*/, size_t /*transferedBytes*/) override { }
+
private:
void _SetVSFields(std::string const& rI);
@@ -91,12 +95,6 @@ namespace Battlenet
bool HandleResumeModule(BitStream* dataStream, ServerPacket** response);
bool UnhandledModule(BitStream* dataStream, ServerPacket** response);
- std::string GetRemoteAddress() const { return _socket.remote_endpoint().address().to_string(); }
- uint16 GetRemotePort() const { return _socket.remote_endpoint().port(); }
-
- tcp::socket _socket;
- uint8 _readBuffer[size_t(BufferSizes::Read)];
-
uint32 _accountId;
std::string _accountName;
std::string _locale;