diff options
Diffstat (limited to 'src/hostserv.c')
-rw-r--r-- | src/hostserv.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/hostserv.c b/src/hostserv.c index 52dfbc0d9..dd98d279f 100644 --- a/src/hostserv.c +++ b/src/hostserv.c @@ -39,6 +39,36 @@ void moduleAddHostServCmds(void) /*************************************************************************/ /** + * Return information on memory use. + * Assumes pointers are valid. + **/ + +void get_hostserv_stats(long *nrec, long *memuse) +{ + long count = 0, mem = 0; + int i; + HostCore *hc; + + for (hc = head; hc; hc = hc->next) { + count++; + mem += sizeof(*hc); + if (hc->nick) + mem += strlen(hc->nick) + 1; + if (hc->vIdent) + mem += strlen(hc->vIdent) + 1; + if (hc->vHost) + mem += strlen(hc->vHost) + 1; + if (hc->creator) + mem += strlen(hc->creator) + 1; + } + + *nrec = count; + *memuse = mem; +} + +/*************************************************************************/ + +/** * HostServ initialization. * @return void */ |