From f3407d0ee4e34ed33be18de5f886a4da2affbf9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ingo=20Kl=C3=B6cker?= Date: Tue, 27 Oct 2020 15:33:51 +0100 Subject: core: New function gpgme_op_revsig. * src/gpgme.h.in (gpgme_op_revsig_start, gpgme_op_revsig): New. (GPGME_REVSIG_LFSEP): New. * src/context.h (ctx_op_data_id_t): Add OPDATA_REVSIG. * src/revsig.c: New. * src/Makefile.am (main_sources): Add revsig. * src/libgpgme.vers, src/gpgme.def: Add gpgme_op_revsig and gpgme_op_revsig_start. * src/engine.h, src/engine.c: (_gpgme_engine_op_revsig): New. * src/engine-backend.h (engine_ops): Add 'revsig' and adjust all engine initializers. * src/engine-gpg.c (gpg_revsig): New. (_gpgme_engine_ops_gpg): Set revsig to gpg_revsig. * doc/gpgme.texi: Document new functions. * tests/run-keysign.c: Add option --revoke. -- This extends GPGME to support the --quick-revoke-sig command added by GnuPG 2.2.24. This allows revoking key signatures. GnuPG-bug-id: 5094 --- src/engine.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/engine.c') diff --git a/src/engine.c b/src/engine.c index aeb30c67..8280c520 100644 --- a/src/engine.c +++ b/src/engine.c @@ -824,6 +824,20 @@ _gpgme_engine_op_keysign (engine_t engine, gpgme_key_t key, const char *userid, } +gpgme_error_t +_gpgme_engine_op_revsig (engine_t engine, gpgme_key_t key, gpgme_key_t signing_key, + const char *userid, unsigned int flags) +{ + if (!engine) + return gpg_error (GPG_ERR_INV_VALUE); + + if (!engine->ops->revsig) + return gpg_error (GPG_ERR_NOT_IMPLEMENTED); + + return (*engine->ops->revsig) (engine->engine, key, signing_key, userid, flags); +} + + gpgme_error_t _gpgme_engine_op_tofu_policy (engine_t engine, gpgme_key_t key, gpgme_tofu_policy_t policy) -- cgit v1.2.3