X-Git-Url: http://the.earth.li/gitweb/?a=blobdiff_plain;f=stats.c;h=ca7c929d73e29b0b357f6410a2917ad5718b22f3;hb=5b3f77c7fbafb036d20a1577ed74f475e94ed821;hp=e67ef2f5b73e4e520e628e51034222e5267a988a;hpb=ce8be6edbed5c435a8f957781a26e6f9eac6fcec;p=onak.git diff --git a/stats.c b/stats.c index e67ef2f..ca7c929 100644 --- a/stats.c +++ b/stats.c @@ -4,17 +4,17 @@ * Jonathan McDowell * * Copyright 2000-2002 Project Purple - * - * $Id: stats.c,v 1.13 2003/10/11 21:52:18 noodles Exp $ */ #include #include +#include "cleanup.h" #include "getcgi.h" #include "hash.h" #include "keydb.h" #include "ll.h" +#include "onak-conf.h" #include "stats.h" /** @@ -68,10 +68,10 @@ unsigned long findpath(struct stats_key *have, struct stats_key *want) keys = lladd(NULL, want); oldkeys = keys; - while (keys != NULL && have->colour == 0) { - sigs = cached_getkeysigs(((struct stats_key *) + while ((!cleanup()) && keys != NULL && have->colour == 0) { + sigs = config.dbbackend->cached_getkeysigs(((struct stats_key *) keys->object)->keyid); - while (sigs != NULL && have->colour == 0) { + while ((!cleanup()) && sigs != NULL && have->colour == 0) { /* * Check if we've seen this key before and if not mark * it and add its sigs to the list we want to look at. @@ -129,14 +129,14 @@ void dofindpath(uint64_t have, uint64_t want, bool html, int count) int pathnum; char *uid; - fullhave = getfullkeyid(have); - fullwant = getfullkeyid(want); + fullhave = config.dbbackend->getfullkeyid(have); + fullwant = config.dbbackend->getfullkeyid(want); /* * Make sure the keys we have and want are in the cache. */ - (void) cached_getkeysigs(fullhave); - (void) cached_getkeysigs(fullwant); + (void) config.dbbackend->cached_getkeysigs(fullhave); + (void) config.dbbackend->cached_getkeysigs(fullwant); if ((keyinfoa = findinhash(fullhave)) == NULL) { printf("Couldn't find key 0x%llX.\n", have); @@ -149,7 +149,7 @@ void dofindpath(uint64_t have, uint64_t want, bool html, int count) pathnum = 0; - while (pathnum < count) { + while ((!cleanup()) && (pathnum < count)) { /* * Fill the tree info up. */ @@ -181,7 +181,8 @@ void dofindpath(uint64_t have, uint64_t want, bool html, int count) html ? "
" : ""); curkey = keyinfoa; while (curkey != NULL && curkey->keyid != 0) { - uid = keyid2uid(curkey->keyid); + uid = config.dbbackend->keyid2uid( + curkey->keyid); if (html && uid == NULL) { printf("0x%08llX ([" @@ -257,7 +258,7 @@ struct stats_key *furthestkey(struct stats_key *have) curll = lladd(NULL, have); while (curll != NULL) { - sigs = cached_getkeysigs(((struct stats_key *) + sigs = config.dbbackend->cached_getkeysigs(((struct stats_key *) curll->object)->keyid); while (sigs != NULL) { if (((struct stats_key *) sigs->object)->colour == 0) {