aboutsummaryrefslogtreecommitdiffstats
path: root/src/engine-gpg.c
diff options
context:
space:
mode:
authorNIIBE Yutaka <[email protected]>2022-03-16 07:19:50 +0000
committerNIIBE Yutaka <[email protected]>2022-03-16 07:19:50 +0000
commitb2a2158384a9f048ff61ee0cebef8346055f0454 (patch)
tree149ce593770fc5648a5b707f6f57e95e69718fd8 /src/engine-gpg.c
parentqt: Add missing include of config.h (diff)
downloadgpgme-b2a2158384a9f048ff61ee0cebef8346055f0454.tar.gz
gpgme-b2a2158384a9f048ff61ee0cebef8346055f0454.zip
core: Support keylist mode for op_keylist_from_data.
* src/engine-backend.h (keylist_data): Add MODE argument. * src/engine-gpg.c (gpg_keylist_data): Add MODE argument. * src/engine.c (_gpgme_engine_op_keylist_data): Likewise. * src/engine.h (_gpgme_engine_op_keylist_data): Declaration. * src/keylist.c (gpgme_op_keylist_from_data_start): Call _gpgme_engine_op_keylist_data with ctx->keylist_mode. -- GnuPG-bug-id: 5438 Signed-off-by: NIIBE Yutaka <[email protected]>
Diffstat (limited to 'src/engine-gpg.c')
-rw-r--r--src/engine-gpg.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/engine-gpg.c b/src/engine-gpg.c
index 88a248d2..6528e3d5 100644
--- a/src/engine-gpg.c
+++ b/src/engine-gpg.c
@@ -3179,7 +3179,7 @@ gpg_keylist_ext (void *engine, const char *pattern[], int secret_only,
static gpgme_error_t
-gpg_keylist_data (void *engine, gpgme_data_t data)
+gpg_keylist_data (void *engine, gpgme_keylist_mode_t mode, gpgme_data_t data)
{
engine_gpg_t gpg = engine;
gpgme_error_t err;
@@ -3198,6 +3198,9 @@ gpg_keylist_data (void *engine, gpgme_data_t data)
err = add_arg (gpg, "--dry-run");
if (!err)
err = add_arg (gpg, "--import");
+ if (!err && (mode & GPGME_KEYLIST_MODE_SIGS)
+ && have_gpg_version (gpg, "2.0.10"))
+ err = add_arg (gpg, "--with-sig-check");
if (!err)
err = add_arg (gpg, "--");
if (!err)