Index: nss/lib/certhigh/ocsp.c |
=================================================================== |
--- nss/lib/certhigh/ocsp.c (revision 251855) |
+++ nss/lib/certhigh/ocsp.c (working copy) |
@@ -18,6 +18,7 @@ |
#include "secasn1.h" |
#include "secder.h" |
#include "cert.h" |
+#include "certi.h" |
#include "xconst.h" |
#include "secerr.h" |
#include "secoid.h" |
@@ -4184,8 +4185,9 @@ |
} else { |
certUsage = certUsageStatusResponder; |
} |
- rv = CERT_VerifyCert(handle, signerCert, PR_TRUE, |
- certUsage, producedAt, pwArg, NULL); |
+ rv = cert_VerifyCertWithFlags(handle, signerCert, PR_TRUE, certUsage, |
+ producedAt, CERT_VERIFYCERT_SKIP_OCSP, |
+ pwArg, NULL); |
if (rv != SECSuccess) { |
PORT_SetError(SEC_ERROR_OCSP_INVALID_SIGNING_CERT); |
goto finish; |
@@ -5085,6 +5087,9 @@ |
} |
if (cachedResponseFreshness == ocspFresh) { |
CERT_DestroyOCSPCertID(certID); |
+ if (rvOcsp != SECSuccess) { |
+ PORT_SetError(cachedErrorCode); |
+ } |
return rvOcsp; |
} |