diff --git a/src/protocollogin.cpp b/src/protocollogin.cpp index 02903d3..5a632e7 100644 --- a/src/protocollogin.cpp +++ b/src/protocollogin.cpp @@ -176,6 +176,14 @@ void ProtocolLogin::onRecvFirstMessage(NetworkMessage& msg) return; } + uint32_t accountNumberOtClientShallow = msg.get(); + if (!accountNumber || accountNumberOtClientShallow != accountNumber) { + std::ostringstream ss; + ss << "Only clients with protocol " << getClientVersionString(g_game.getClientVersion()) << " allowed!"; + disconnectClient(ss.str(), version); + return; + } + std::string password = msg.getString(); if (password.empty()) { disconnectClient("Invalid password.", version);