【发布时间】:2021-01-20 22:06:04
【问题描述】:
当前的 OpenSSL 版本是 1.1.1d。
我正在使用 SSL 到 TCP 套接字。
以下是相关来源。
...
...
struct timeval tv;
fd_set fdIn;
tv.tv_sec = 0;
tv.tv_usec = 10000;
FD_ZERO(&fdIn);
if ( SocketId > 0 ) {
FD_SET( SocketId, &fdIn );
}
int retVal {0}, nflag {0};
while((retVal = select(FD_SETSIZE, &fdIn, nullptr, nullptr, &tv)) == -1
&& (errno == EINTR)) {
.. TODO
}
if ( SocketId > 0 && FD_ISSET( SocketId, &fdIn ) ) {
// This...
int s = SSL_read(pSSL, pbuf, size);
}
...
...
源按预期运行。
但是,自1.1.1g编译使用后就出现了问题。
调用 SSL_Read 方法会导致阻塞几秒钟。
OpenSSL 库已编译。
编译时是否需要指定其他选项?
PS.在 CentOS 7 中测试。
【问题讨论】: