summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkaie%kuix.de <devnull@localhost>2008-03-14 23:29:37 +0000
committerkaie%kuix.de <devnull@localhost>2008-03-14 23:29:37 +0000
commit4ed1cd80c491abb072bdcd60d00f88e3e1bc77db (patch)
tree00c5b5b8156c05b334043e4931efeedee02288fd
parent04ede36938a01ef1f892309e21ecd7f16be1bd97 (diff)
downloadnss-hg-4ed1cd80c491abb072bdcd60d00f88e3e1bc77db.tar.gz
Bug 412468, modify certutil, vfychain and vfyserv utilities to use CERT_PKIXVerifyCert function
Patch v6: Adjust vfychain to new revocation flags r=alexei, r=nelson
-rw-r--r--security/nss/cmd/vfychain/vfychain.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/security/nss/cmd/vfychain/vfychain.c b/security/nss/cmd/vfychain/vfychain.c
index cf31228e7..d9e178e10 100644
--- a/security/nss/cmd/vfychain/vfychain.c
+++ b/security/nss/cmd/vfychain/vfychain.c
@@ -378,6 +378,8 @@ breakout:
CERTValInParam cvin[5];
SECOidTag oidTag;
int inParamIndex = 0;
+ CERTRevocationFlags rev;
+ PRUint64 revFlags[1];
if (oidStr) {
PRArenaPool *arena;
@@ -429,9 +431,23 @@ breakout:
cvin[inParamIndex].value.scalar.time = time;
inParamIndex++;
+ revFlags[cert_revocation_method_crl] =
+ CERT_REV_M_TEST_USING_THIS_METHOD;
+
+ rev.leafTests.number_of_defined_methods = cert_revocation_method_crl +1;
+ rev.leafTests.cert_rev_flags_per_method = revFlags;
+ rev.leafTests.number_of_preferred_methods = 0;
+ rev.leafTests.preferred_methods = 0;
+ rev.leafTests.cert_rev_method_independent_flags = 0;
+
+ rev.chainTests.number_of_defined_methods = cert_revocation_method_crl +1;
+ rev.chainTests.cert_rev_flags_per_method = revFlags;
+ rev.chainTests.number_of_preferred_methods = 0;
+ rev.chainTests.preferred_methods = 0;
+ rev.chainTests.cert_rev_method_independent_flags = 0;
+
cvin[inParamIndex].type = cert_pi_revocationFlags;
- cvin[inParamIndex].value.scalar.ul = CERT_REV_FAIL_SOFT_CRL |
- CERT_REV_FLAG_CRL;
+ cvin[inParamIndex].value.pointer.revocation = &rev;
inParamIndex++;
cvin[inParamIndex].type = cert_pi_end;