1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-06-01 22:28:02 +02:00

Fix bug#1059 (missing status line signature verification done with a

subkey while on the main key has expired).
This commit is contained in:
Werner Koch 2009-12-17 17:56:00 +00:00
parent e1fe8b0432
commit 22e8b1a671
2 changed files with 11 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2009-12-17 Werner Koch <wk@g10code.com>
* sig-check.c (do_check_messages): Evaluate the HAS_EXPIRED flag.
Fixes bug#1059.
2009-12-15 Werner Koch <wk@g10code.com>
* tdbio.c (tdbio_set_dbname): Do not call log_fatal after creating

View File

@ -229,13 +229,17 @@ do_check_messages( PKT_public_key *pk, PKT_signature *sig,
return G10ERR_TIME_CONFLICT;
}
if( pk->expiredate && pk->expiredate < cur_time ) {
/* Check whether the key has expired. We check the has_expired
flag which is set after a full evaluation of the key (getkey.c)
as well as a simple compare to the current time in case the
merge has for whatever reasons not been done. */
if( pk->has_expired || (pk->expiredate && pk->expiredate < cur_time)) {
char buf[11];
if (opt.verbose)
log_info(_("NOTE: signature key %s expired %s\n"),
keystr_from_pk(pk), asctimestamp( pk->expiredate ) );
/* SIGEXPIRED is deprecated. Use KEYEXPIRED. */
sprintf(buf,"%lu",(ulong)pk->expiredate);
snprintf (buf, sizeof buf,"%lu",(ulong)pk->expiredate);
write_status_text(STATUS_KEYEXPIRED,buf);
write_status(STATUS_SIGEXPIRED);
if(r_expired)