aboutsummaryrefslogtreecommitdiff
path: root/src/server/bnetserver/Server/Session.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2017-10-03 18:03:57 +0200
committerShauren <shauren.trinity@gmail.com>2017-10-03 18:03:57 +0200
commit4d5eacd3af8406e41f6f335355b1f860f2323ee1 (patch)
tree72bf785977783898fa1fd5a22926ce9e9634f3df /src/server/bnetserver/Server/Session.cpp
parent0b36d80115000ab9d1005e5999aad0c3acd9e041 (diff)
Core/Bnet: Added support for -launcherlogin logins (external client launcher required)
Diffstat (limited to 'src/server/bnetserver/Server/Session.cpp')
-rw-r--r--src/server/bnetserver/Server/Session.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/server/bnetserver/Server/Session.cpp b/src/server/bnetserver/Server/Session.cpp
index c0e2ab9db70..41cd43500d3 100644
--- a/src/server/bnetserver/Server/Session.cpp
+++ b/src/server/bnetserver/Server/Session.cpp
@@ -206,7 +206,7 @@ void Battlenet::Session::SendRequest(uint32 serviceHash, uint32 methodId, pb::Me
AsyncWrite(&packet);
}
-uint32 Battlenet::Session::HandleLogon(authentication::v1::LogonRequest const* logonRequest, std::function<void(ServiceBase*, uint32, ::google::protobuf::Message const*)>& /*continuation*/)
+uint32 Battlenet::Session::HandleLogon(authentication::v1::LogonRequest const* logonRequest, std::function<void(ServiceBase*, uint32, ::google::protobuf::Message const*)>& continuation)
{
if (logonRequest->program() != "WoW")
{
@@ -230,6 +230,9 @@ uint32 Battlenet::Session::HandleLogon(authentication::v1::LogonRequest const* l
_os = logonRequest->platform();
_build = logonRequest->application_version();
+ if (logonRequest->has_cached_web_credentials())
+ return VerifyWebCredentials(logonRequest->cached_web_credentials(), continuation);
+
boost::asio::ip::tcp::endpoint const& endpoint = sLoginService.GetAddressForClient(GetRemoteIpAddress());
challenge::v1::ChallengeExternalRequest externalChallenge;