* Jonathan McDowell <noodles@earth.li>
*
* Copyright 2002 Project Purple
- *
- * $Id: lookup.c,v 1.15 2004/05/27 01:25:37 noodles Exp $
*/
#include <inttypes.h>
#include "armor.h"
#include "charfuncs.h"
+#include "cleankey.h"
+#include "cleanup.h"
+#include "config.h"
#include "getcgi.h"
#include "keydb.h"
#include "keyindex.h"
} else {
readconfig(NULL);
initlogthing("lookup", config.logfile);
+ catchsignals();
initdb(true);
switch (op) {
case OP_GET:
- logthing(LOGTHING_NOTICE, "Getting keyid %llX",
+ logthing(LOGTHING_NOTICE, "Getting keyid 0x%llX",
keyid);
if (fetch_key(keyid, &publickey, false)) {
puts("<pre>");
+ cleankeys(publickey);
flatten_publickey(publickey,
&packets,
&list_end);
packets);
puts("</pre>");
} else {
+ logthing(LOGTHING_NOTICE,
+ "Failed to fetch key.");
puts("Key not found");
}
break;
break;
case OP_PHOTO:
if (fetch_key(keyid, &publickey, false)) {
- struct openpgp_packet *photo = NULL;
- photo = getphoto(publickey, 0);
- if (photo != NULL) {
- fwrite(photo->data+19,
+ unsigned char *photo = NULL;
+ size_t length = 0;
+
+ if (getphoto(publickey, 0, &photo, &length)) {
+ fwrite(photo,
1,
- (photo->length - 19),
+ length,
stdout);
}
free_publickey(publickey);
}
if (!mrhkp) {
puts("<hr>");
- puts("Produced by onak " VERSION " by Jonathan McDowell");
+ puts("Produced by onak " PACKAGE_VERSION
+ " by Jonathan McDowell");
end_html();
}