diff options
-rw-r--r-- | src/server/bnetserver/Server/Session.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/server/bnetserver/Server/Session.cpp b/src/server/bnetserver/Server/Session.cpp index 55a6827854a..fd74128b458 100644 --- a/src/server/bnetserver/Server/Session.cpp +++ b/src/server/bnetserver/Server/Session.cpp @@ -245,11 +245,17 @@ uint32 Battlenet::Session::HandleLogon(authentication::v1::LogonRequest const* l uint32 Battlenet::Session::HandleVerifyWebCredentials(authentication::v1::VerifyWebCredentialsRequest const* verifyWebCredentialsRequest, std::function<void(ServiceBase*, uint32, ::google::protobuf::Message const*)>& continuation) { - return VerifyWebCredentials(verifyWebCredentialsRequest->web_credentials(), continuation); + if (verifyWebCredentialsRequest->has_web_credentials()) + return VerifyWebCredentials(verifyWebCredentialsRequest->web_credentials(), continuation); + + return ERROR_DENIED; } uint32 Battlenet::Session::VerifyWebCredentials(std::string const& webCredentials, std::function<void(ServiceBase*, uint32, ::google::protobuf::Message const*)>& continuation) { + if (webCredentials.empty()) + return ERROR_DENIED; + PreparedStatement* stmt = LoginDatabase.GetPreparedStatement(LOGIN_SEL_BNET_ACCOUNT_INFO); stmt->setString(0, webCredentials); |