diff options
author | Werner Koch <[email protected]> | 2002-01-23 13:40:38 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2002-01-23 13:40:38 +0000 |
commit | d9a4ccf94eabaca0981e0da9064160852fa31c02 (patch) | |
tree | 4bcb3d21e933fdf8c4bb7075a5fa12eb6132dfcd /sm/certpath.c | |
parent | 2002-01-22 Marcus Brinkmann <[email protected]> (diff) | |
download | gnupg-d9a4ccf94eabaca0981e0da9064160852fa31c02.tar.gz gnupg-d9a4ccf94eabaca0981e0da9064160852fa31c02.zip |
* certpath.c (gpgsm_validate_path): Print the DN of a missing issuer.
* certdump.c (gpgsm_dump_string): New.
(print_dn): Replaced by above.
Diffstat (limited to 'sm/certpath.c')
-rw-r--r-- | sm/certpath.c | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/sm/certpath.c b/sm/certpath.c index f155cfb2d..9ef862643 100644 --- a/sm/certpath.c +++ b/sm/certpath.c @@ -38,7 +38,9 @@ static int unknown_criticals (KsbaCert cert) { static const char *known[] = { + "2.5.29.15", /* keyUsage */ "2.5.29.19", /* basic Constraints */ + "2.5.29.32", /* certificatePolicies */ NULL }; int rc = 0, i, idx, crit; @@ -232,7 +234,14 @@ gpgsm_validate_path (KsbaCert cert) rc = keydb_search_subject (kh, issuer); if (rc) { - log_error ("failed to find issuer's certificate: rc=%d\n", rc); + if (rc == -1) + { + log_info ("issuer certificate ("); + gpgsm_dump_string (issuer); + log_printf (") not found\n"); + } + else + log_error ("failed to find issuer's certificate: rc=%d\n", rc); rc = GNUPG_Missing_Certificate; goto leave; } @@ -340,7 +349,14 @@ gpgsm_basic_cert_check (KsbaCert cert) rc = keydb_search_subject (kh, issuer); if (rc) { - log_error ("failed to find issuer's certificate: rc=%d\n", rc); + if (rc == -1) + { + log_info ("issuer certificate ("); + gpgsm_dump_string (issuer); + log_printf (") not found\n"); + } + else + log_error ("failed to find issuer's certificate: rc=%d\n", rc); rc = GNUPG_Missing_Certificate; goto leave; } |