c++ - SSL 握手错误 : session id context uninitialized

标签 c++ ssl boost openssl boost-asio

我正在编写服务器应用程序,它通过与 boost::asio 的集成使用 boost::asiolibssl。当有传入连接时,第一次握手成功,但在连接断开后客户端再次尝试连接时,握手失败并出现错误:

session id context uninitialized

Here提出了在初始化 SSL 上下文时使用 SSL_OP_NO_TICKET 选项的解决方案。我按以下方式使用它:

m_sslContext.set_options(SSL_OP_NO_TICKET);

一开始这解决了问题,但现在尽管选项仍然设置错误再次出现。有没有人知道其他方法可以解决这个问题?

最佳答案

我发现当问题出现时,我仍然有一个旧的连接到试图再次连接的同一个远程端点。当我正确地断开旧连接时,问题就消失了。

关于c++ - SSL 握手错误 : session id context uninitialized,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38658473/

相关文章:

c++ - 无法获得 Matlab 生成的相同结果

c++ - 从其他类调用此方法会创建违规阅读

c++ - Boost Asio tcp::acceptor 访问冲突异常

google-maps - 通过 SSL 的 Google map 选项

c++ - 如何使用 boost::spirit::qi 和 std::vector<token_type> 而不是 std::string

c++ - 纹理绑定(bind)的特殊参数?

ssl - 通过 TLS 将 Kafka 生产者/消费者连接到代理

ssl - jboss 5.1 ssl 客户端认证

c++ - 如何将 boost::numeric::ublas::vector 复制到矩阵?

c++ - 涵盖boost::trim并接受std::vector <std::string>的函数