]> git.sommitrealweird.co.uk Git - onak.git/blobdiff - gpgwww.c
Relax asserts when cleaning up.
[onak.git] / gpgwww.c
index 570f1a8bc25bdfaef71a56a8d7a950169cf94a1a..87fe4ce67d3462a5dd8944ef3c73b76e3165538c 100644 (file)
--- a/gpgwww.c
+++ b/gpgwww.c
@@ -4,8 +4,6 @@
  * Jonathan McDowell <noodles@earth.li>
  *
  * Copyright 2001-2002 Project Purple.
- *
- * $Id: gpgwww.c,v 1.14 2004/05/26 18:53:14 noodles Exp $
  */
 
 #include <inttypes.h>
@@ -15,6 +13,7 @@
 
 #include "armor.h"
 #include "charfuncs.h"
+#include "cleanup.h"
 #include "getcgi.h"
 #include "hash.h"
 #include "keydb.h"
@@ -77,7 +76,7 @@ int getkeyspath(uint64_t have, uint64_t want, int count)
                return 1;
        }
        
-       while (pathlen < count) {
+       while ((!cleanup()) && (pathlen < count)) {
                /*
                 * Fill the tree info up.
                 */
@@ -94,7 +93,7 @@ int getkeyspath(uint64_t have, uint64_t want, int count)
                        curkey = findinhash(keyinfoa->parent);
                        while (curkey != NULL && curkey->keyid != 0) {
                                if (curkey->keyid != fullwant && fetch_key(
-                                               curkey->keyid & 0xFFFFFFFF,
+                                               curkey->keyid,
                                                        &publickey, false)) {
                                        flatten_publickey(publickey,
                                                        &packets,
@@ -114,7 +113,7 @@ int getkeyspath(uint64_t have, uint64_t want, int count)
        /*
         * Add the destination key to the list of returned keys.
         */
-       if (fetch_key(fullwant & 0xFFFFFFFF, &publickey, false)) {
+       if (fetch_key(fullwant, &publickey, false)) {
                flatten_publickey(publickey,
                                &packets,
                                &list_end);
@@ -167,6 +166,7 @@ int main(int argc, char *argv[])
 
        readconfig(NULL);
        initlogthing("gpgwww", config.logfile);
+       catchsignals();
        initdb(true);
        inithash();
        logthing(LOGTHING_NOTICE, "Looking for path from 0x%llX to 0x%llX.",