From 497db0b5bcd688c4e2144ba167bd2ac485069d1b Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Wed, 2 Sep 2020 15:05:44 +0200 Subject: keyboxd: Restructure client access code. * kbx/kbx-client-util.c: New. * kbx/kbx-client-util.h: New. * kbx/Makefile.am (client_sources): New. * g10/keydb.c (parse_keyblock_image): Rename to keydb_parse_keyblock and make global. * g10/call-keyboxd.c: Include kbx-client-util.h. (struct keyboxd_local_s): Remove struct datastream. Add field kcd. Remove per_session_init_done. (lock_datastream, unlock_datastream): Remove. (prepare_data_pipe, datastream_thread): Remove. (keydb_get_keyblock_do_parse): Remove. (gpg_keyboxd_deinit_session_data): Release the KCD object. (open_context): Use of kbx_client_data_new. (keydb_get_keyblock): Simplify. (keydb_search): Use kbx_client_data_cmd and _wait. -- The data specific part of the code has been moved from gpg to a new module in kbx/ so that it can also be used by gpgsm. The OpenPGP parsing while reading the data has been replaced by storing the data in memory and parse it later. That makes a nice interface and abstracts the fd-passing/D-lines handling away. Signed-off-by: Werner Koch --- g10/keydb-private.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'g10/keydb-private.h') diff --git a/g10/keydb-private.h b/g10/keydb-private.h index fdc905edf..c54e73f69 100644 --- a/g10/keydb-private.h +++ b/g10/keydb-private.h @@ -154,6 +154,10 @@ struct keydb_handle_s /*-- keydb.c --*/ + +gpg_error_t keydb_parse_keyblock (iobuf_t iobuf, int pk_no, int uid_no, + kbnode_t *r_keyblock); + /* These are the functions call-keyboxd diverts to if the keyboxd is * not used. */ -- cgit v1.2.3