aboutsummaryrefslogtreecommitdiffstats
path: root/g10/pkclist.c
diff options
context:
space:
mode:
Diffstat (limited to 'g10/pkclist.c')
-rw-r--r--g10/pkclist.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/g10/pkclist.c b/g10/pkclist.c
index f123fc0d8..cd453323f 100644
--- a/g10/pkclist.c
+++ b/g10/pkclist.c
@@ -167,7 +167,24 @@ do_we_trust( PKT_public_cert *pkc, int trustlevel )
{
int rc;
- switch( trustlevel ) {
+ if( (trustlevel & TRUST_FLAG_REVOKED) ) {
+ char *answer;
+ int yes;
+
+ log_info("key has beed revoked!\n");
+ if( opt.batch )
+ return 0;
+
+ answer = tty_get("Use this key anyway? ");
+ tty_kill_prompt();
+ yes = answer_is_yes(answer);
+ m_free(answer);
+ if( !yes )
+ return 0;
+ }
+
+
+ switch( (trustlevel & TRUST_MASK) ) {
case TRUST_UNKNOWN: /* No pubkey in trustDB: Insert and check again */
rc = insert_trust_record( pkc );
if( rc ) {
@@ -184,7 +201,7 @@ do_we_trust( PKT_public_cert *pkc, int trustlevel )
return do_we_trust( pkc, trustlevel );
case TRUST_EXPIRED:
- log_error("trust has expired: NOT yet implemented\n");
+ log_info("trust has expired: NOT yet implemented\n");
return 0; /* no */
case TRUST_UNDEFINED: