diff options
Diffstat (limited to 'g10/sig-check.c')
-rw-r--r-- | g10/sig-check.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/g10/sig-check.c b/g10/sig-check.c index b7709c15a..94f0cc5ff 100644 --- a/g10/sig-check.c +++ b/g10/sig-check.c @@ -243,6 +243,22 @@ do_check( PKT_public_key *pk, PKT_signature *sig, MD_HANDLE digest, if( (rc=do_check_messages(pk,sig,r_expired,r_revoked)) ) return rc; + if (sig->digest_algo == DIGEST_ALGO_MD5 + && !opt.flags.allow_weak_digest_algos) + { + static int shown; + + if (!shown) + { + log_info + (_("Note: signatures using the %s algorithm are rejected\n"), + "MD5"); + shown = 1; + } + + return G10ERR_DIGEST_ALGO; + } + /* make sure the digest algo is enabled (in case of a detached signature)*/ md_enable( digest, sig->digest_algo ); |