OpenSSL を使用して x509 証明書チェーンを取得および検証する C プログラムを作成しています。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 のように、エラーの連鎖の深さを判断する方法はありますか? サンプルコードは大歓迎です。