aboutsummaryrefslogtreecommitdiffstats
path: root/src/gpgme.c
diff options
context:
space:
mode:
authorAndre Heinecke <[email protected]>2019-10-29 15:11:54 +0000
committerAndre Heinecke <[email protected]>2019-10-29 15:11:54 +0000
commit0224408c6332648461bdbba562f1a61c947c8ed3 (patch)
treea2a057e151cb4b0c563ddb796b8b7835d6a42750 /src/gpgme.c
parentcpp: Minor coding style fix (diff)
downloadgpgme-0224408c6332648461bdbba562f1a61c947c8ed3.tar.gz
gpgme-0224408c6332648461bdbba562f1a61c947c8ed3.zip
core: Add cert-notation support and extended-edit
* src/context.h (gpgme_context): Add new flag for extended-edit. * src/engine-gpg.c (append_args_from_sig_notations): Add flags to control the kind of notations. (gpg_edit): Respect extended-edit and notations. (gpg_encrypt_sign, gpg_sign): Update call to append_args_from_sig_notations. * src/gpgme.c (gpgme_set_ctx_flag, gpgme_get_ctx_flag): Support extended-edit. * NEWS, doc/gpgme.texi: Mention extended-edit. -- This provides a way to get the extended key-edit interface without breaking bad state machines that rely on the current command flow. A use case for this is to enable multiple local signatures, which can be used together with annotations for: GnuPG-Bug-Id: T4734
Diffstat (limited to 'src/gpgme.c')
-rw-r--r--src/gpgme.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gpgme.c b/src/gpgme.c
index 65a2e309..8f4d5f3e 100644
--- a/src/gpgme.c
+++ b/src/gpgme.c
@@ -566,6 +566,10 @@ gpgme_set_ctx_flag (gpgme_ctx_t ctx, const char *name, const char *value)
if (!ctx->trust_model)
err = gpg_error_from_syserror ();
}
+ else if (!strcmp (name, "extended-edit"))
+ {
+ ctx->extended_edit = abool;
+ }
else
err = gpg_error (GPG_ERR_UNKNOWN_NAME);
@@ -623,6 +627,10 @@ gpgme_get_ctx_flag (gpgme_ctx_t ctx, const char *name)
{
return ctx->auto_key_locate? ctx->auto_key_locate : "";
}
+ else if (!strcmp (name, "extended-edit"))
+ {
+ return ctx->extended_edit ? "1":"";
+ }
else
return NULL;
}