2
我正在尝试使用OpenSSL C API编写CertificatePathValidation测试。 我目前停留在测试撤销中间(ca-)证书。有两种测试用例:1. EndCert被吊销,并且2. SubCACert被吊销。我的代码的一部分:OpenSSL C API CRL检查
FILE* fl = NULL;
int i;
for(i=0; i<crl_count; i++){
fl = fopen(pem_crl_files[i],"r");
x509 = PEM_read_X509_CRL(fl, NULL,0,NULL);
X509_STORE_add_crl(store, x509);
fclose(fl);
}
X509_STORE_set_flags(store, X509_V_FLAG_CRL_CHECK);
所以现在当我使用X509_V_FLAG_CRL_CHECK标志,测试用例1的工作了罚款,测试案例2失败(返回证书是有效的)。如果我使用X509_V_FLAG_CRL_CHECK_ALL标志,则情况1和2都会失败。 有谁知道我错过了什么?