about summary refs log tree commit diff
path: root/src/engine/server
diff options
context:
space:
mode:
authorMagnus Auvinen <magnus.auvinen@gmail.com>2007-08-04 18:23:26 +0000
committerMagnus Auvinen <magnus.auvinen@gmail.com>2007-08-04 18:23:26 +0000
commit1eadf9942ad07ba3c60f9a027cf232a351fa9b05 (patch)
tree0c513cbd05f37049c40c2a199d44020202134f73 /src/engine/server
parentc89e2d0dc89fec398f111807013b1091322f6f51 (diff)
downloadzcatch-1eadf9942ad07ba3c60f9a027cf232a351fa9b05.tar.gz
zcatch-1eadf9942ad07ba3c60f9a027cf232a351fa9b05.zip
fixed handling of versions. added error messages when disconnected. updated the connecting gui. fixed no streched clouds
Diffstat (limited to 'src/engine/server')
-rw-r--r--src/engine/server/server.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/engine/server/server.cpp b/src/engine/server/server.cpp
index c20821eb..6a2b7b8f 100644
--- a/src/engine/server/server.cpp
+++ b/src/engine/server/server.cpp
@@ -397,6 +397,18 @@ public:
 			// system message
 			if(msg == NETMSG_INFO)
 			{
+				char version[64];
+				strncpy(version, msg_unpack_string(), 64);
+				if(strcmp(version, TEEWARS_NETVERSION_STRING) != 0)
+				//if(strcmp(version, "ERROR") != 0)
+				{
+					// OH FUCK! wrong version, drop him
+					char reason[256];
+					sprintf(reason, "wrong version. server is running %s.", TEEWARS_NETVERSION_STRING);
+					net.drop(cid, reason);
+					return;
+				}
+				
 				strncpy(clients[cid].name, msg_unpack_string(), MAX_NAME_LENGTH);
 				strncpy(clients[cid].clan, msg_unpack_string(), MAX_CLANNAME_LENGTH);
 				const char *password = msg_unpack_string();