mirror of
https://github.com/BeamMP/BeamMP-Server.git
synced 2026-04-03 06:16:04 +00:00
fix version check on auth
This commit is contained in:
@@ -147,7 +147,7 @@ std::string THeartbeatThread::GenerateCall() {
|
||||
<< "&map=" << Application::Settings.getAsString(Settings::Key::General_Map)
|
||||
<< "&private=" << (Application::Settings.getAsBool(Settings::Key::General_Private) ? "true" : "false")
|
||||
<< "&version=" << Application::ServerVersionString()
|
||||
<< "&clientversion=" << Application::ClientMinimumVersion()
|
||||
<< "&clientversion=" << Application::ClientMinimumVersion().AsString()
|
||||
<< "&name=" << Application::Settings.getAsString(Settings::Key::General_Name)
|
||||
<< "&tags=" << Application::Settings.getAsString(Settings::Key::General_Tags)
|
||||
<< "&guests=" << (Application::Settings.getAsBool(Settings::Key::General_AllowGuests) ? "true" : "false")
|
||||
|
||||
@@ -293,9 +293,10 @@ std::shared_ptr<TClient> TNetwork::Authentication(TConnection&& RawConnection) {
|
||||
if (Data.size() > 3 && std::equal(Data.begin(), Data.begin() + VC.size(), VC.begin(), VC.end())) {
|
||||
std::string ClientVersionStr(reinterpret_cast<const char*>(Data.data() + 2), Data.size() - 2);
|
||||
Version ClientVersion = Application::VersionStrToInts(ClientVersionStr + ".0");
|
||||
if (ClientVersion.major != Application::ClientMajorVersion()) {
|
||||
beammp_errorf("Client tried to connect with version '{}', but only versions '{}.x.x' is allowed",
|
||||
ClientVersion.AsString(), Application::ClientMajorVersion());
|
||||
Version MinClientVersion = Application::ClientMinimumVersion();
|
||||
if (Application::IsOutdated(ClientVersion, MinClientVersion)) {
|
||||
beammp_errorf("Client tried to connect with version '{}', but only versions >= {} are allowed",
|
||||
ClientVersion.AsString(), Application::ClientMinimumVersion().AsString());
|
||||
ClientKick(*Client, "Outdated Version!");
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user