[nexuiz-commits] r8505 - in trunk/data: . qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Sat Jan 16 13:04:01 EST 2010


Author: div0
Date: 2010-01-16 13:04:00 -0500 (Sat, 16 Jan 2010)
New Revision: 8505

Modified:
   trunk/data/defaultNexuiz.cfg
   trunk/data/qcsrc/server/cl_client.qc
   trunk/data/qcsrc/server/clientcommands.qc
   trunk/data/qcsrc/server/ipban.qc
Log:
User ID support (compile with -DUID)

Modified: trunk/data/defaultNexuiz.cfg
===================================================================
--- trunk/data/defaultNexuiz.cfg	2010-01-16 12:14:20 UTC (rev 8504)
+++ trunk/data/defaultNexuiz.cfg	2010-01-16 18:04:00 UTC (rev 8505)
@@ -1225,7 +1225,7 @@
 set cl_gravity 800	"but ignored anyway"
 
 set g_ban_default_bantime 5400	"90 minutes"
-set g_ban_default_masksize 3	"whole 255.255.255.0 networks (set to 4 for single IPs)"
+set g_ban_default_masksize 3	"whole 255.255.255.0 networks (set to 4 for single IPs); when UID support is compiled in, masksize 0 means banning by UID"
 set g_banned_list ""	"format: IP remainingtime IP remainingtime ..."
 alias bans "sv_cmd bans"
 alias ban "sv_cmd ban $*"         // usage: ban address(maybe incomplete, like 1.2.3) bantime(seconds)

Modified: trunk/data/qcsrc/server/cl_client.qc
===================================================================
--- trunk/data/qcsrc/server/cl_client.qc	2010-01-16 12:14:20 UTC (rev 8504)
+++ trunk/data/qcsrc/server/cl_client.qc	2010-01-16 18:04:00 UTC (rev 8505)
@@ -2956,6 +2956,7 @@
 		return;
 	}
 #endif
+
 	if(sv_maxidle && frametime)
 	{
 		// WORKAROUND: only use dropclient in server frames (frametime set). Never use it in cl_movement frames (frametime zero).

Modified: trunk/data/qcsrc/server/clientcommands.qc
===================================================================
--- trunk/data/qcsrc/server/clientcommands.qc	2010-01-16 12:14:20 UTC (rev 8504)
+++ trunk/data/qcsrc/server/clientcommands.qc	2010-01-16 18:04:00 UTC (rev 8505)
@@ -222,12 +222,13 @@
 		}
 		GetCvars(1);
 #ifdef UID
-	} else if (cmd == "uid") {
+	} else if(cmd == "uid") {
 		if not(self.uid)
 		{
 			self.uid = strzone(argv(1));
 			self.uid_kicktime = 0;
 			print("Client ", etos(self), " has UID ", self.uid, "\n");
+			Ban_MaybeEnforceBan(self);
 		}
 #endif
 	} else if(cmd == "sentcvar") { // new system

Modified: trunk/data/qcsrc/server/ipban.qc
===================================================================
--- trunk/data/qcsrc/server/ipban.qc	2010-01-16 12:14:20 UTC (rev 8504)
+++ trunk/data/qcsrc/server/ipban.qc	2010-01-16 18:04:00 UTC (rev 8505)
@@ -243,6 +243,9 @@
 string ban_ip2;
 string ban_ip3;
 string ban_ip4;
+#ifdef UID
+string ban_uid;
+#endif
 
 void Ban_SaveBans()
 {
@@ -351,6 +354,9 @@
 	ban_ip2 = substring(s, 0, i2);
 	ban_ip3 = substring(s, 0, i3);
 	ban_ip4 = strcat1(s);
+#ifdef UID
+	ban_uid = client.uid;
+#endif
 
 	return TRUE;
 }
@@ -382,6 +388,9 @@
 		if(ban_ip2 == s) return TRUE;
 		if(ban_ip3 == s) return TRUE;
 		if(ban_ip4 == s) return TRUE;
+#ifdef UID
+		if(ban_uid == s) return TRUE;
+#endif
 	}
 	return FALSE;
 }
@@ -522,9 +531,15 @@
 		case 3:
 			Ban_Insert(ban_ip3, bantime, reason, 1);
 			break;
+		case 4:
 		default:
 			Ban_Insert(ban_ip4, bantime, reason, 1);
 			break;
+#ifdef UID
+		case 0:
+			Ban_Insert(ban_uid, bantime, reason, 1);
+			break;
+#endif
 	}
 	/*
 	 * not needed, as we enforce the ban in Ban_Insert anyway



More information about the nexuiz-commits mailing list