我正在处理这个大型自定义网络应用。它是用C ++(linux)编写的,使用sockets.h ---代码涉及传递文件(套接字)描述符,使用结构,设置套接字选项等等。
不是重写所有内容,而是想知道是否有任何可用的东西使用与socket.h相同的函数原型,但使用openSSL来保护通信通道。
显然,仍然需要设置密钥,验证位置等内容,但是避免将所有内容更改为BIO或其他任何内容都会很棒......
谢谢!
答案 0 :(得分:1)
SSL_set_fd和SSL_get_fd允许您设置/检索文件描述符并避免BIO。您仍然需要使用SSL_read / SSL_write而不是读/写,依此类推。
要实现sockets.h接口,需要一种方法可以轻松地从fd转到SSL对象,这是非常重要的。 OpenSSL没有这样的包装器,我非常怀疑第三方包装器是否存在。