我正在编写一个 C 程序来使用 OpenSSL 检索和验证 x509 证书链。这是我第一次用 C 编程,我非常依赖http://www.ibm.com/developerworks/linux/library/l-openssl/上的教程
我可以使用以下代码从连接中检索任何错误代码:
if (SSL_get_verify_result(ssl) != X509_V_OK)
{
printf("\nError verifying certificate\n");
fprintf(stderr, "Error Code: %lu\n", SSL_get_verify_result(ssl));
}
但是我还需要知道哪个证书是有问题的。有没有办法像命令行 s_client 那样确定错误的链深度?任何示例代码将不胜感激。