X-Git-Url: https://git.sommitrealweird.co.uk/onak.git/blobdiff_plain/8b782f377eff7672249d66423d3ca792574931e2..6938a097fb6c1cda197b18f868808c860e832bb9:/onak.c?ds=inline diff --git a/onak.c b/onak.c index 903c8f0..7748ed2 100644 --- a/onak.c +++ b/onak.c @@ -7,7 +7,7 @@ * * Copyright 2002 Project Purple * - * $Id: onak.c,v 1.15 2003/09/28 20:33:34 noodles Exp $ + * $Id: onak.c,v 1.18 2003/10/15 21:15:21 noodles Exp $ */ #include @@ -16,6 +16,7 @@ #include #include "armor.h" +#include "charfuncs.h" #include "keydb.h" #include "keyid.h" #include "keyindex.h" @@ -26,30 +27,6 @@ #include "onak-conf.h" #include "parsekey.h" -int stdin_getchar(void *ctx, size_t count, unsigned char *c) -{ - int ic = 0; - - while ((count > 0) && (ic != EOF)) { - ic = getchar(); - *c = ic; - c++; - count--; - } - - return (ic == EOF); -} - -int stdout_putchar(void *ctx, size_t count, unsigned char *c) -{ - int i; - - for (i = 0; i < count; i++) { - putchar(c[i]); - } - return 0; -} - void find_keys(char *search, uint64_t keyid, bool ishex, bool fingerprint, bool exact, bool verbose) { @@ -94,6 +71,7 @@ int main(int argc, char *argv[]) struct openpgp_packet_list *packets = NULL; struct openpgp_packet_list *list_end = NULL; struct openpgp_publickey *keys = NULL; + char *configfile = NULL; int rc = EXIT_SUCCESS; int result = 0; char *search = NULL; @@ -106,11 +84,14 @@ int main(int argc, char *argv[]) bool fingerprint = false; int optchar; - while ((optchar = getopt(argc, argv, "bfuv")) != -1 ) { + while ((optchar = getopt(argc, argv, "bc:fuv")) != -1 ) { switch (optchar) { case 'b': binary = true; break; + case 'c': + configfile = strdup(optarg); + break; case 'f': fingerprint = true; break; @@ -124,7 +105,7 @@ int main(int argc, char *argv[]) } } - readconfig(); + readconfig(configfile); initlogthing("onak", config.logfile); if ((argc - optind) < 1) { @@ -136,7 +117,7 @@ int main(int argc, char *argv[]) } else if (!strcmp("add", argv[optind])) { if (binary) { result = read_openpgp_stream(stdin_getchar, NULL, - &packets); + &packets, 0); logthing(LOGTHING_INFO, "read_openpgp_stream: %d", result); } else {