通过SSL绑定客户端本地IP
我希望将 SSL 支持添加到我正在开发的用 C/C++ 编写的客户端应用程序(它是多平台的,设计用于在 Linux 和 Windows 上运行)。 OpenSSL 文档相当糟糕,但我在这里找到了一个很好的工作教程。然而,据我所知,无法使用 BIO 句柄将套接字绑定到本地 IP 地址。 OpenSSL 错误跟踪器上有一张相当旧的票证可以解决此问题,但我认为尚未找到解决方案(一条评论建议使用 BIO_get_accept_socket
,但这显然不适用于我的客户端应用程序)。有什么建议、解决方案或提供此类功能的替代库吗?
I'm looking to add SSL support to a client application written in C/C++ that I'm developing (it is multi-platform, designed to work on Linux and Windows). OpenSSL documentation is pretty poor, but I found a good working tutorial here. To my knowledge, however, there is no way to bind the socket to a local IP address using the BIO handle. There is a rather old ticket on the OpenSSL bug tracker that addresses this, but I think that no solution has been found (one comment suggests using BIO_get_accept_socket
, but that will obviously not work for my client application). Any suggestions, solutions, or alternative libraries that offer this kind of functionality?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以自己创建、绑定和连接套接字,然后使用
SSL_set_fd
将套接字传递给 OpenSSL,然后使用SSL_connect
设置会话。You can just create, bind and connect the socket yourself, then use
SSL_set_fd
to pass the socket to OpenSSL, followed bySSL_connect
to set up the session.