繁体   English   中英

如何从Boost.ASIO获得SSL *?

[英]How do I get an SSL* from Boost.ASIO?

我正在通过Boost.ASIO实现客户端SSL连接。 根据我正在使用的参考书,我需要调用SSL_get_verify_result来确保服务器证书的一切正常。 不幸的是,它需要一个指向SSL结构的指针,我不知道如何从ASIO中获取它。

我尝试在我的boost::asio::ssl::stream<boost::asio::ip::tcp::socket>对象上使用impl()函数,但编译器抱怨它返回其他内容。

必须有办法获得这些信息。 有谁知道吗?

问题解决了。 它说impl()返回的结构是boost::asio::ssl::detail::openssl_stream_service::impl_struct* 我没想到它会被记录下来,但我终于绝望地搜索它并发现其他情况。 更好的是,它包含一个指向我需要的SSL结构的指针,以及OpenSSL BIO结构和某种缓冲区。

ASIO有一个本机方法:在ssl上下文中调用set_verify_mode

impl()方法返回SSL_CTX *,但您不应该依赖它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM