aboutsummaryrefslogtreecommitdiffstats
path: root/g10/mainproc.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2023-04-05 19:32:23 +0000
committerWerner Koch <[email protected]>2023-04-05 19:32:23 +0000
commitc9e95b8dee05b9a837419fdef9a98f0b3e9671ed (patch)
treec8f574986ea2a49707e5c29e7102bbd88c9478f3 /g10/mainproc.c
parentspeedo,w32: Remove removed profiles and temporary disable runonce. (diff)
downloadgnupg-c9e95b8dee05b9a837419fdef9a98f0b3e9671ed.tar.gz
gnupg-c9e95b8dee05b9a837419fdef9a98f0b3e9671ed.zip
gpg: New option --assert-signer.
* g10/gpg.c (enum cmd_and_opt_values): Add oAssertSigner. (opts): Add "assert-signer". (main): Set option. (assert_signer_true): New var. (g10_exit): Evaluate new var. * g10/main.h (assert_signer_true): Declare new var. * common/status.h (STATUS_ASSERT_SIGNER): New. * g10/options.h (opt): Add field assert_signer_list. * g10/verify.c (is_fingerprint): New. (check_assert_signer_list): New. * g10/mainproc.c (check_sig_and_print): Call that function. Clear assert_signer_true on a warning. * g10/gpgv.c: Add dummy function and vars. * g10/t-keydb-get-keyblock.c: Ditto. * g10/t-keydb.c: Ditto. * g10/t-stutter.c: Ditto. --
Diffstat (limited to '')
-rw-r--r--g10/mainproc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/g10/mainproc.c b/g10/mainproc.c
index 4710386ea..ce0fdaaac 100644
--- a/g10/mainproc.c
+++ b/g10/mainproc.c
@@ -2410,7 +2410,7 @@ check_sig_and_print (CTX c, kbnode_t node)
}
/* For good signatures print the VALIDSIG status line. */
- if (!rc && is_status_enabled () && pk)
+ if (!rc && (is_status_enabled () || opt.assert_signer_list) && pk)
{
char pkhex[MAX_FINGERPRINT_LEN*2+1];
char mainpkhex[MAX_FINGERPRINT_LEN*2+1];
@@ -2430,6 +2430,8 @@ check_sig_and_print (CTX c, kbnode_t node)
sig->digest_algo,
sig->sig_class,
mainpkhex);
+ /* Handle the --assert-signer option. */
+ check_assert_signer_list (mainpkhex, pkhex);
}
/* Print compliance warning for Good signatures. */
@@ -2510,6 +2512,7 @@ check_sig_and_print (CTX c, kbnode_t node)
is not a detached signature. */
log_info (_("WARNING: not a detached signature; "
"file '%s' was NOT verified!\n"), dfile);
+ assert_signer_true = 0;
}
xfree (dfile);
}