【问题标题】:An OpenSSL wrapper that mimics socket.h (C++)一个模仿 socket.h (C++) 的 OpenSSL 包装器
【发布时间】:2011-12-14 06:24:36
【问题描述】:

我正在处理这个大型自定义网络应用程序。它是用 C++ (linux) 编写的,使用 sockets.h --- 代码涉及传递文件(套接字)描述符、使用结构、设置套接字选项等。

与其全部重写,不如想知道是否有任何可用的东西使用与 socket.h 相同的函数原型,但使用 openSSL 来保护通信通道。

显然,仍然需要设置诸如密钥、验证位置等内容,但最好避免将所有内容更改为 BIO 或其他任何内容...

谢谢!!

【问题讨论】:

    标签: c++ c sockets ssl openssl


    【解决方案1】:

    SSL_set_fdSSL_get_fd 让您设置/检索文件描述符并避免 BIO。你仍然需要使用 SSL_read/SSL_write 而不是读/写等等。

    要实现 sockets.h 接口需要一种从 fd 轻松转到 SSL 对象的方法,这是非常重要的。 OpenSSL 没有这样的包装器,我非常怀疑是否存在第三方包装器。

    【讨论】:

    • Shame :( 但这就是我的想法。您知道将 setsockopts(例如,无延迟,reuseaddr)映射到 SSL 等效项的任何指南吗?
    猜你喜欢
    • 2013-04-21
    • 1970-01-01
    • 2021-06-27
    • 2013-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多