0

我正在使用SSL_Connect()并且返回代码是“-1”,SSL_get_error()我可以看到错误是SSL_ERROR_WANT_READ

根据一个论坛上的建议,它建议继续打电话SSL_connect(),直到出现此错误。通过第一次调用的修改,我得到了 WANT_READ 错误,第二次调用我得到了错误SSL_ERROR_SSL。之后,对于所有后续调用,它SSL_ERROR_SSL只是并且根据此错误的描述,它看起来有问题SSL library

成功解决的人可以SSL_connect提供一些帮助。

我的代码是一个简单的调用序列:
1. SSL_library_init()
2. 使用这个方法创建方法(v23)和上下文
3. 上下文没有被修改,它就像创建一样简单。
4. SSL 对象是使用此普通 ctx 创建的,并在调用 SSL_set_fd() 后在此 ssl 上调用 ssl_connect

如果我在这个序列中做错了什么或者我错过了什么,请告诉我?

是否需要ctx在使用它之前加载各种东西来喜欢证书并验证位置,如果是的话,最少需要什么。

提前感谢您的帮助。

4

1 回答 1

1

如果它想要读取,则必须进行读取,或者在 select() 中阻塞,直到 OP_READ 触发(如果非阻塞),然后再次调用 SSL_Connect() 。如果它想要写入,您必须进行写入,或者在 select() 中阻塞,直到 OP_WRITE 如果非阻塞触发,然后再次调用 SSL_Connect()。

这里

于 2011-07-15T06:04:23.380 回答