dedicated: proper reason why DEV_VERSION is kicked.

This commit is contained in:
Igor Popov
2012-07-01 16:40:19 +04:00
committed by Chris Forbes
parent 5bacf69445
commit 5d5fe3f5a1

View File

@@ -265,9 +265,6 @@ namespace OpenRA.Server
mods.Select( m => Pair.New(m.Split('@')[0], m.Split('@')[1])).All(kv => Game.CurrentMods.ContainsKey(kv.First) &&
(kv.Second == "{DEV_VERSION}" || Game.CurrentMods[kv.First].Version == "{DEV_VERSION}" || kv.Second == Game.CurrentMods[kv.First].Version));
// Drop DEV_VERSION if it's a Dedicated
if ( lobbyInfo.GlobalSettings.Dedicated && mods.Any(m => m.Contains("{DEV_VERSION}")) ) { valid = false; }
if (!valid)
{
Log.Write("server", "Rejected connection from {0}; mods do not match.",
@@ -277,6 +274,17 @@ namespace OpenRA.Server
DropClient(newConn);
return;
}
// Drop DEV_VERSION if it's a Dedicated
if ( lobbyInfo.GlobalSettings.Dedicated && mods.Any(m => m.Contains("{DEV_VERSION}")) )
{
Log.Write("server", "Rejected connection from {0}; DEV_VERSION is not allowed here.",
newConn.socket.RemoteEndPoint);
SendOrderTo(newConn, "ServerError", "DEV_VERSION is not allowed here");
DropClient(newConn);
return;
}
// Check if IP is banned
if (lobbyInfo.GlobalSettings.Ban != null)