public virtual byte[] GetEncoded(X509Certificate checkCert, X509Certificate rootCert, String url)
{
try {
BasicOcspResp basicResponse = GetBasicOCSPResp(checkCert, rootCert, url);
if (basicResponse != null) {
SingleResp[] responses = basicResponse.Responses;
if (responses.Length == 1) {
SingleResp resp = responses[0];
Object status = resp.GetCertStatus();
if (status == CertificateStatus.Good) {
return basicResponse.GetEncoded();
}
else if (status is Org.BouncyCastle.Ocsp.RevokedStatus) {
throw new IOException(MessageLocalization.GetComposedMessage("ocsp.status.is.revoked"));
}
else {
throw new IOException(MessageLocalization.GetComposedMessage("ocsp.status.is.unknown"));
}
}
}
}
catch (Exception ex) {
if (LOGGER.IsLogging(Level.ERROR))
LOGGER.Error(ex.Message);
}
return null;
}