使用SSL_CTX_set_timeout打开SSL通信TimeOut错误

时间:2013-02-07 12:55:36

标签: c openssl

我正在使用Open SSL Communication进行服务器 - 客户端通信。它工作正常,但会话超时SSL_CTX_set_timeout方法无效。

以下是代码:

 SSL_CTX *ctx;
 OpenSSL_add_all_algorithms(); 
 if(SSL_library_init() != 1){
 return -1; 
}
 SSL_load_error_strings();
 meth = SSLv3_method(); 
 ctx = SSL_CTX_new(meth); 
 SSL_CTX_set_timeout(ctx, 180); 

即使服务器未向客户端发送任何超过5分钟的消息,SSL_CTX_set_timeout也无效。

请建议我解决这个问题。

先谢谢 普拉卡什B

1 个答案:

答案 0 :(得分:2)

SSL_CTX_set_timeout()仅设置session expiration timeout(何时重新协商SSL / TLS),而不是某种通信超时。您需要在套接字管理代码中处理后者。