diff options
author | Ingo Klöcker <[email protected]> | 2023-01-30 10:58:01 +0000 |
---|---|---|
committer | Ingo Klöcker <[email protected]> | 2023-01-30 11:49:11 +0000 |
commit | 48b11f576260286bddef3833e25d0059638fe0bb (patch) | |
tree | 9795561417da9c2131b1602e8984ff84a2e01b44 /src/engine-uiserver.c | |
parent | qt: Add job for creating encrypted archives (diff) | |
download | gpgme-48b11f576260286bddef3833e25d0059638fe0bb.tar.gz gpgme-48b11f576260286bddef3833e25d0059638fe0bb.zip |
core: Use signature modes as flags
* src/engine-backend.h (engine_ops.sign): Rename argument mode to
flags.
* src/engine-gpg.c (gpg_sign): Rename argument mode to flags. Check
for invalid combination of flags.
* src/engine-gpgsm.c (gpgsm_sign): Rename argument mode to flags.
Check for unsupported flags.
* src/engine-uiserver.c (gpgsm_sign): Rename argument mode to flags.
Check for unsupported flags.
* src/engine.c, src/engine.h (_gpgme_engine_op_sign): Rename argument
mode to flags.
* src/gpgme.h.in (GPGME_SIG_MODE_ARCHIVE): Change value to 4.
(gpgme_op_sign_start, gpgme_op_sign): Rename argument mode to flags.
* src/sign.c (sign_start): Rename argument mode to flags. Adjust
check for invalid flags.
(gpgme_op_sign_start, gpgme_op_sign): Rename argument mode to flags.
--
Using the signature mode constants as flags is more natural, even if
currently all flags are mutually exclusive, because archives are
signed with a normal signature.
GnuPG-bug-id: 6342
Diffstat (limited to 'src/engine-uiserver.c')
-rw-r--r-- | src/engine-uiserver.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/engine-uiserver.c b/src/engine-uiserver.c index 7aa9cfe3..a298bec6 100644 --- a/src/engine-uiserver.c +++ b/src/engine-uiserver.c @@ -1214,7 +1214,7 @@ uiserver_encrypt (void *engine, gpgme_key_t recp[], const char *recpstring, static gpgme_error_t uiserver_sign (void *engine, gpgme_data_t in, gpgme_data_t out, - gpgme_sig_mode_t mode, int use_armor, int use_textmode, + gpgme_sig_mode_t flags, int use_armor, int use_textmode, int include_certs, gpgme_ctx_t ctx /* FIXME */) { engine_uiserver_t uiserver = engine; @@ -1237,8 +1237,11 @@ uiserver_sign (void *engine, gpgme_data_t in, gpgme_data_t out, else return gpgme_error (GPG_ERR_UNSUPPORTED_PROTOCOL); + if (flags & (GPGME_SIG_MODE_CLEAR | GPGME_SIG_MODE_ARCHIVE)) + return gpg_error (GPG_ERR_INV_VALUE); + if (gpgrt_asprintf (&cmd, "SIGN%s%s", protocol, - (mode == GPGME_SIG_MODE_DETACH) ? " --detached" : "") < 0) + (flags & GPGME_SIG_MODE_DETACH) ? " --detached" : "") < 0) return gpg_error_from_syserror (); key = gpgme_signers_enum (ctx, 0); |