X-Git-Url: https://git.sommitrealweird.co.uk/onak.git/blobdiff_plain/42bcfe2cae29f375af4cf2cd3ccfa196b77a3946..b3e534f945ae56605bc5309e7c5af020c797a69b:/keydb_file.c?ds=sidebyside diff --git a/keydb_file.c b/keydb_file.c index 4c1a6a3..f735122 100644 --- a/keydb_file.c +++ b/keydb_file.c @@ -4,6 +4,8 @@ * Jonathan McDowell * * Copyright 2002 Project Purple + * + * $Id: keydb_file.c,v 1.11 2004/03/23 12:33:46 noodles Exp $ */ #include @@ -29,7 +31,7 @@ * * This is just a no-op for flat file access. */ -void initdb(void) +void initdb(bool readonly) { } @@ -86,8 +88,10 @@ int fetch_key(uint64_t keyid, struct openpgp_publickey **publickey, fd = open(keyfile, O_RDONLY); // | O_SHLOCK); if (fd > -1) { - read_openpgp_stream(file_fetchchar, &fd, &packets); + read_openpgp_stream(file_fetchchar, &fd, &packets, 0); parse_keys(packets, publickey); + free_packet_list(packets); + packets = NULL; close(fd); } @@ -125,6 +129,8 @@ int store_key(struct openpgp_publickey *publickey, bool intrans, bool update) write_openpgp_stream(file_putchar, &fd, packets); close(fd); + free_packet_list(packets); + packets = NULL; } return (fd > -1); @@ -163,6 +169,21 @@ int fetch_key_text(const char *search, struct openpgp_publickey **publickey) return 0; } +/** + * dumpdb - dump the key database + * @filenamebase: The base filename to use for the dump. + * + * Dumps the database into one or more files, which contain pure OpenPGP + * that can be reimported into onak or gpg. filenamebase provides a base + * file name for the dump; several files may be created, all of which will + * begin with this string and then have a unique number and a .pgp + * extension. + * */ +int dumpdb(char *filenamebase) +{ + return 0; +} + /* * Include the basic keydb routines. */