From f4da1455c7ab858ea9007d0813774c6d04cd4576 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Thu, 2 Jan 2020 14:21:12 +0100 Subject: kbx: Initial support for an SQLite backend * kbx/backend-sqlite.c: New. * kbx/Makefile.am (keyboxd_SOURCES): Add it. (keyboxd_CFLAGS, keyboxd_LDADD): Add SQLite flags. * kbx/backend.h (enum database_types): Add DB_TYPE_SQLITE. (be_sqlite_local_t): New typedef. (struct db_request_part_s): Add field besqlite. * kbx/backend-support.c (strdbtype): Add string for DB_TYPE_SQLITE. (be_generic_release_backend): Support SQLite. (be_release_request): Ditto. (be_find_request_part): Ditto. (is_x509_blob): Rename to ... (be_is_x509_blob): this and make global. * kbx/frontend.c (kbxd_set_database): Detect ".db" suffix and use that for SQLite. (kbxd_search): Support SQLite (kbxd_store): Ditto. (kbxd_delete): Ditto. * kbx/frontend.h (kbxd_store_modes): Move to ... * kbx/keyboxd.h (enum kbxd_store_modes): here. * kbx/keyboxd.c (main): USe pubring.db for now. This is a temporary hack. * kbx/backend-kbx.c (be_kbx_delete): Remove unused var cert. -- Take care: This is not finished and in particular filling the database takes quite long. Signed-off-by: Werner Koch --- kbx/keyboxd.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'kbx/keyboxd.c') diff --git a/kbx/keyboxd.c b/kbx/keyboxd.c index 25a97e9a3..59e320467 100644 --- a/kbx/keyboxd.c +++ b/kbx/keyboxd.c @@ -736,7 +736,8 @@ main (int argc, char **argv ) } kbxd_init_default_ctrl (ctrl); - kbxd_set_database (ctrl, "pubring.kbx", 0); + /* kbxd_set_database (ctrl, "pubring.kbx", 0); */ + kbxd_set_database (ctrl, "pubring.db", 0); kbxd_start_command_handler (ctrl, GNUPG_INVALID_FD, 0); kbxd_deinit_default_ctrl (ctrl); @@ -870,7 +871,8 @@ main (int argc, char **argv ) kbxd_exit (1); } kbxd_init_default_ctrl (ctrl); - kbxd_set_database (ctrl, "pubring.kbx", 0); + /* kbxd_set_database (ctrl, "pubring.kbx", 0); */ + kbxd_set_database (ctrl, "pubring.db", 0); kbxd_deinit_default_ctrl (ctrl); xfree (ctrl); } -- cgit v1.2.3