mirror of
git://git.gnupg.org/gnupg.git
synced 2025-04-17 15:44:34 +02:00
* sig-check.c (signature_check2): Sanity check that the md has a context
for the hash that the sig is expecting. This can happen if a onepass sig header does not match the actual sig, and also if the clearsign "Hash:" header is missing or does not match the actual sig.
This commit is contained in:
parent
bed4e0daa0
commit
e703540328
@ -1,5 +1,11 @@
|
||||
2002-08-07 David Shaw <dshaw@jabberwocky.com>
|
||||
|
||||
* sig-check.c (signature_check2): Sanity check that the md has a
|
||||
context for the hash that the sig is expecting. This can happen
|
||||
if a onepass sig header does not match the actual sig, and also if
|
||||
the clearsign "Hash:" header is missing or does not match the
|
||||
actual sig.
|
||||
|
||||
* keyedit.c (menu_revsig): Properly show a uid is revoked without
|
||||
restarting gpg. This is Debian bug 124219, though their supplied
|
||||
patch will not do the right thing.
|
||||
|
@ -63,7 +63,17 @@ signature_check2( PKT_signature *sig, MD_HANDLE digest,
|
||||
int rc=0;
|
||||
|
||||
*r_expiredate = 0;
|
||||
if( get_pubkey( pk, sig->keyid ) )
|
||||
|
||||
/* Sanity check that the md has a context for the hash that the
|
||||
sig is expecting. This can happen if a onepass sig header does
|
||||
not match the actual sig, and also if the clearsign "Hash:"
|
||||
header is missing or does not match the actual sig. */
|
||||
|
||||
if(!md_algo_present(digest,sig->digest_algo)) {
|
||||
log_info(_("WARNING: signature digest conflict in message\n"));
|
||||
rc=G10ERR_BAD_SIGN;
|
||||
}
|
||||
else if( get_pubkey( pk, sig->keyid ) )
|
||||
rc = G10ERR_NO_PUBKEY;
|
||||
else if(!pk->is_valid &&
|
||||
(pk->main_keyid[0]!=pk->keyid[0] ||
|
||||
|
Loading…
x
Reference in New Issue
Block a user