(calc_sig_summary): Set the key revoked bit.

This commit is contained in:
Werner Koch 2005-04-21 07:12:18 +00:00
parent d285de6c55
commit afc34f239c
3 changed files with 24 additions and 7 deletions

View File

@ -1,3 +1,7 @@
2005-04-21 Werner Koch <wk@g10code.com>
* verify.c (calc_sig_summary): Set the key revoked bit.
2004-12-11 Marcus Brinkmann <marcus@g10code.de> 2004-12-11 Marcus Brinkmann <marcus@g10code.de>
* util.h [HAVE_CONFIG_H && HAVE_TTYNAME_R] (ttyname_r): Define * util.h [HAVE_CONFIG_H && HAVE_TTYNAME_R] (ttyname_r): Define

View File

@ -75,7 +75,7 @@ extern "C" {
AM_PATH_GPGME macro) check that this header matches the installed AM_PATH_GPGME macro) check that this header matches the installed
library. Warning: Do not edit the next line. configure will do library. Warning: Do not edit the next line. configure will do
that for you! */ that for you! */
#define GPGME_VERSION "1.0.2" #define GPGME_VERSION "1.0.3-cvs"
/* Some opaque data types used by GPGME. */ /* Some opaque data types used by GPGME. */

View File

@ -94,7 +94,8 @@ static void
calc_sig_summary (gpgme_signature_t sig) calc_sig_summary (gpgme_signature_t sig)
{ {
unsigned long sum = 0; unsigned long sum = 0;
/* Calculate the red/green flag. */
if (sig->validity == GPGME_VALIDITY_FULL if (sig->validity == GPGME_VALIDITY_FULL
|| sig->validity == GPGME_VALIDITY_ULTIMATE) || sig->validity == GPGME_VALIDITY_ULTIMATE)
{ {
@ -113,11 +114,6 @@ calc_sig_summary (gpgme_signature_t sig)
else if (gpg_err_code (sig->status) == GPG_ERR_BAD_SIGNATURE) else if (gpg_err_code (sig->status) == GPG_ERR_BAD_SIGNATURE)
sum |= GPGME_SIGSUM_RED; sum |= GPGME_SIGSUM_RED;
if (sig->validity == GPGME_VALIDITY_UNKNOWN)
{
if (gpg_err_code (sig->validity_reason) == GPG_ERR_CRL_TOO_OLD)
sum |= GPGME_SIGSUM_CRL_TOO_OLD;
}
/* FIXME: handle the case when key and message are expired. */ /* FIXME: handle the case when key and message are expired. */
switch (gpg_err_code (sig->status)) switch (gpg_err_code (sig->status))
@ -143,6 +139,23 @@ calc_sig_summary (gpgme_signature_t sig)
break; break;
} }
/* Now look at the certain reason codes. */
switch (gpg_err_code (sig->validity_reason))
{
case GPG_ERR_CRL_TOO_OLD:
if (sig->validity == GPGME_VALIDITY_UNKNOWN)
sum |= GPGME_SIGSUM_CRL_TOO_OLD;
break;
case GPG_ERR_CERT_REVOKED:
sum |= GPGME_SIGSUM_KEY_REVOKED;
break;
default:
break;
}
/* Check other flags. */
if (sig->wrong_key_usage) if (sig->wrong_key_usage)
sum |= GPGME_SIGSUM_BAD_POLICY; sum |= GPGME_SIGSUM_BAD_POLICY;