Home GnuPG
Diffusion GnuPG c2b14f5d6852

keyboxd: New command TRANSACTION.

Description

keyboxd: New command TRANSACTION.

* kbx/backend-sqlite.c (be_sqlite_rollback): New.
(be_sqlite_commit): New.
(be_sqlite_search): Take care of global transactions.
(be_sqlite_store): Ditto.
(be_sqlite_delete): Ditto.
* kbx/frontend.c (kbxd_rollback, kbxd_commit): New.
* kbx/keyboxd.h (opt): Add vars for transactions.
* kbx/kbxserver.c (struct server_local_s): Add fields next_session and
client_pid.
(session_list): New var.
(cmd_transaction): New.
(register_commands): Register command.
(kbxd_start_command_handler): Store pids and track sessions.  Do a
final rollback.

This command is currently an experiment to allow a client to run
everything in one session.

  • Signed-off-by: Werner Koch <wk@gnupg.org>

Details

Provenance
wernerAuthored on Sep 24 2020, 4:38 PM
Parents
rGb19a60c6f7e8: tests: Integrate --use-keyboxd into the OpenPGP test suite.
Branches
Unknown
Tags
Unknown