diff options
author | Ingo Klöcker <[email protected]> | 2023-01-19 09:45:04 +0000 |
---|---|---|
committer | Ingo Klöcker <[email protected]> | 2023-01-19 09:45:04 +0000 |
commit | 0ca45e48b45af1978027e6fe26c7e406fd5ec74b (patch) | |
tree | b5954cd207e33c4fc7cfa90b62503139e344b67e /src/sign.c | |
parent | core: Fix --set-filename argument (diff) | |
download | gpgme-0ca45e48b45af1978027e6fe26c7e406fd5ec74b.tar.gz gpgme-0ca45e48b45af1978027e6fe26c7e406fd5ec74b.zip |
core: Support usage of gpgtar for creating a signed archive
* src/gpgme.h.in (GPGME_SIG_MODE_ARCHIVE): New signature mode.
* src/engine-gpg.c (append_args_from_sender,
append_args_from_sig_notations): Use add_gpg_arg_with_value
for gpg-only options with a value.
(gpg_sign): Set use_gpgtar engine flag if GPGME_SIG_MODE_ARCHIVE mode
is set. Check for new enough gpg. Use add_gpg_arg_with_value for
gpg-only options with a value and add_gpg_arg for gpg-only options
without a value. Set extra options for gpgtar and pass input data to
stdin when using gpgtar.
* src/sign.c (sign_start): Add GPGME_SIG_MODE_ARCHIVE as valid mode.
* tests/run-sign.c (show_usage): New options --archive and
--diagnostics.
(main): Parse new options. Sign with gpgtar if --archive is given.
Print stderr of gpg/gpgtar if --diagnostics is given.
--
With this change the gpgme_op_sign* functions get support for
creating a signed archive from files and/or directories passed as
NUL-separated list in the "in" data with gpgtar.
GnuPG-bug-id: 6342
Diffstat (limited to 'src/sign.c')
-rw-r--r-- | src/sign.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -447,7 +447,7 @@ sign_start (gpgme_ctx_t ctx, int synchronous, gpgme_data_t plain, return err; if (mode != GPGME_SIG_MODE_NORMAL && mode != GPGME_SIG_MODE_DETACH - && mode != GPGME_SIG_MODE_CLEAR) + && mode != GPGME_SIG_MODE_CLEAR && mode != GPGME_SIG_MODE_ARCHIVE) return gpg_error (GPG_ERR_INV_VALUE); if (!plain) |