]> jfr.im git - irc/quakenet/newserv.git/commitdiff
Add efficient user counts to serverlist, fix it for 64-bit machines and add it to...
authorChris Porter <redacted>
Thu, 10 Apr 2008 02:33:59 +0000 (03:33 +0100)
committerChris Porter <redacted>
Thu, 10 Apr 2008 02:33:59 +0000 (03:33 +0100)
serverlist/serverlist.c

index a8ceeb9691fcaa8af552ceb232350b689d2110a2..75db9146e2b6ffc1c1fdd5c8d5d07df4df51a2e3 100644 (file)
@@ -4,6 +4,7 @@
 #include "../lib/irc_string.h"
 #include "../localuser/localuserchannel.h"
 #include "../control/control.h"
+#include "../usercount/usercount.h"
 
 #include <stdlib.h>
 #include <string.h>
@@ -65,7 +66,7 @@ int cmd_serverlist(void *sender, int cargc, char **cargv) {
   nick *np = (nick*)sender;
   int a, i, ucount, acount, scount;
 
-  controlreply(np, "%-7s %-30s %5s/%-5s %-15s %-20s", "Numeric", "Hostname", "Clients", "MaxCl", "Connected for", "Version");
+  controlreply(np, "%-7s %-30s %5s/%5s/%-5s %-15s %-20s", "Numeric", "Hostname", "EClients", "Clients", "MaxCl", "Connected for", "Version");
 
   scount = acount = 0;
 
@@ -80,8 +81,8 @@ int cmd_serverlist(void *sender, int cargc, char **cargv) {
       acount += ucount;
       scount++;
 
-      controlreply(np, "%-7d %-30s %5d/%-5d %-15s %-20s - %s", i, serverlist[i].name->content,
-            ucount, serverlist[i].maxusernum, longtoduration(getnettime() - serverinfo[i].ts, 0),
+      controlreply(np, "%-7d %-30s %5d/%5d/%-5d %-15s %-20s - %s", i, serverlist[i].name->content,
+            servercount[i], ucount, serverlist[i].maxusernum, longtoduration(getnettime() - serverinfo[i].ts, 0),
             serverinfo[i].version1 ? serverinfo[i].version1->content : "Unknown",
             serverinfo[i].version2 ? serverinfo[i].version2->content : "Unknown");
     }
@@ -134,7 +135,7 @@ void serverlist_doversion(void) {
 
 void serverlist_hook_newserver(int hook, void *arg) {
   char *num1, *numeric;
-  int num = (int)arg;
+  long num = (long)arg;
 
   if (mynick == NULL)
     return;
@@ -154,7 +155,7 @@ void serverlist_hook_newserver(int hook, void *arg) {
 }
 
 void serverlist_hook_lostserver(int hook, void *arg) {
-  int num = (int)arg;
+  long num = (long)arg;
 
   serverinfo[num].used = 0;
   freesstring(serverinfo[num].version1);