我们使用Boost asio进行了一些SSL通信。连接和通信工作正常,但现在我们要显示连接使用的实际TLS版本和密码。
我们用于SSL连接的Boost asio对象定义如下:
typedef boost::asio::ssl::stream<boost::asio::ip::tcp::socket> ssl_socket;
boost::shared_ptr<ssl_socket> m_psslsocket;
boost::asio::ssl::context* m_pcontext;
看起来Boost asio确实没有一个界面可以在设置密码后查询密码。
我可以通过调用它来获取OpenSSL SSL_CTX *指针:
SSL_CTX* ctx = pContext->impl();
或OpenSSL SSL *通过调用:
m_psslsocket->native_handle()
但是从OpenSSL文档中我无法弄清楚如何从中获取使用过的密码和TLS版本。