]> jfr.im git - irc/quakenet/newserv.git/blob - trusts/trusts.c
Move formatting functions to formats.c
[irc/quakenet/newserv.git] / trusts / trusts.c
1 #include "trusts.h"
2 #include "../core/hooks.h"
3 #include <stdio.h>
4
5 int trusts_loaddb(void);
6 void trusts_closedb(void);
7 static void statusfn(int, void *);
8
9 void _init(void) {
10 if(!trusts_loaddb())
11 return;
12
13 registerhook(HOOK_CORE_STATSREQUEST, statusfn);
14 }
15
16 void _fini(void) {
17 trusts_closedb();
18
19 deregisterhook(HOOK_CORE_STATSREQUEST, statusfn);
20 }
21
22 static void statusfn(int hooknum, void *arg) {
23 if((long)arg > 10) {
24 char message[100];
25 int groupcount = 0, hostcount = 0;
26 trustgroup *tg;
27 trusthost *th;
28
29 for(tg=tglist;tg;tg=tg->next) {
30 groupcount++;
31 for(th=tg->hosts;th;th=th->next)
32 hostcount++;
33 }
34
35 snprintf(message, sizeof(message), "Trusts : %d trust groups, %d hosts", groupcount, hostcount);
36 triggerhook(HOOK_CORE_STATSREPLY, message);
37 }
38 }