启用日志记录内部openssl消息

时间:2015-10-28 14:27:01

标签: c ssl logging openssl

我希望在SSL握手期间收到错误消息,以便从libssl / libcrypto打印或传递给我的代码。

我不认为来自openssl源中的apps / s_cb.c的msg_cb()中的消息就足够了。我希望看到更多的消息内容,我可以看到那些使用wireshark。我正在寻找错误,例如"无效的HMAC","未知证书","证书验证错误"等等。

对SSLErr的调用就是我所追求的。例如:

SSLerr(SSL_F_SSL23_GET_CLIENT_HELLO, SSL_R_UNSUPPORTED_PROTOCOL);

1 个答案:

答案 0 :(得分:1)

OpenSSL源代码树中的文件doc/ssleay.txt包含一个很大的警告,表明它已过时。名为error.doc的部分看起来仍然相当准确,并且对不同的OpenSSL错误机制给出了很好的概述。你不应该完全信任它。

真正的文档包含您需要的所有内容,但更加分散。主要入口点是man page about err以及它指向的不同链接。

其中一个对你有用的是ERR_print_errors()