[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