diff options
author | Werner Koch <wk@gnupg.org> | 2012-12-27 15:04:29 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2012-12-27 15:04:42 +0100 |
commit | 91e61d52539b1808e209c43e51465c76cebb06f9 (patch) | |
tree | 3ec3f91ece84ef574234df03eed9baf9b6b3b93f /kbx/keybox.h | |
parent | gpg: Import only packets which are allowed in a keyblock. (diff) | |
download | gnupg2-91e61d52539b1808e209c43e51465c76cebb06f9.tar.xz gnupg2-91e61d52539b1808e209c43e51465c76cebb06f9.zip |
gpg: First patches to support a keybox storage backend.
* kbx/keybox-defs.h (_keybox_write_header_blob): Move prototype to ..
* kbx/keybox.h: here.
* kbx/keybox-init.c (keybox_lock): Add dummy function
* g10/keydb.c: Include keybox.h.
(KeydbResourceType): Add KEYDB_RESOURCE_TYPE_KEYBOX.
(struct resource_item): Add field kb.
(maybe_create_keyring_or_box): Add error descriptions to diagnostics.
Add arg IS_BOX. Write a header for a new keybox file.
(keydb_add_resource): No more need for the force flag. Rename the
local variable "force" to "create". Add URL scheme "gnupg-kbx". Add
magic test to detect a keybox file. Add basic support for keybox.
(keydb_new, keydb_get_resource_name, keydb_delete_keyblock)
(keydb_locate_writable, keydb_search_reset, keydb_search2): Add
support for keybox.
(lock_all, unlock_all): Ditto.
* g10/Makefile.am (needed_libs): Add libkeybox.a.
(gpg2_LDADD, gpgv2_LDADD): Add KSBA_LIBS as a workaround.
* g10/keydb.h (KEYDB_RESOURCE_FLAG_PRIMARY)
KEYDB_RESOURCE_FLAG_DEFAULT, KEYDB_RESOURCE_FLAG_READONLY): New.
* g10/gpg.c, g10/gpgv.c (main): Use new constants.
--
I did most of these changes back in 2011 and only cleaned them up
now. More to follow soon.
Diffstat (limited to 'kbx/keybox.h')
-rw-r--r-- | kbx/keybox.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/kbx/keybox.h b/kbx/keybox.h index 52bbe21be..52c16382c 100644 --- a/kbx/keybox.h +++ b/kbx/keybox.h @@ -71,6 +71,12 @@ void keybox_release (KEYBOX_HANDLE hd); const char *keybox_get_resource_name (KEYBOX_HANDLE hd); int keybox_set_ephemeral (KEYBOX_HANDLE hd, int yes); +int keybox_lock (KEYBOX_HANDLE hd, int yes); + +/*-- keybox-file.c --*/ +/* Fixme: This function does not belong here: Provide a better + interface to create a new keybox file. */ +int _keybox_write_header_blob (FILE *fp); /*-- keybox-search.c --*/ #ifdef KEYBOX_WITH_X509 @@ -98,7 +104,6 @@ int keybox_compress (KEYBOX_HANDLE hd); /*-- --*/ #if 0 -int keybox_lock (KEYBOX_HANDLE hd, int yes); int keybox_get_keyblock (KEYBOX_HANDLE hd, KBNODE *ret_kb); int keybox_locate_writable (KEYBOX_HANDLE hd); int keybox_search_reset (KEYBOX_HANDLE hd); |