带有EAP-TLS原始套接字的OpenSSL

时间:2014-07-09 21:07:32

标签: c sockets ssl openssl

我想设计一个EAP-TLS客户端。由于协议在以太网层上工作,我在C中使用原始套接字并逐步设计握手。我想将TLS数据放入我使用OpenSSL设计的数据包中。我在网上找到的例子使用带有套接字描述符的SSL_Connect()并发送数据。但是我想将数据复制到我将使用原始套接字发送的缓冲区中。有没有办法做到这一点?谢谢!

1 个答案:

答案 0 :(得分:2)

如果你想在你自己的缓冲区中拥有所有内容而不是直接发送到套接字,你必须使用不是文件描述符,而是使用内存BIO作为SSL的下层,然后你可以使用顶层的常用SSL_函数它的。您可以查看Directly Read/Write Handshake data with Memory BIO。您可以在AnyEvent::Handle中找到的有效实施方案。虽然这是Perl,但BIO_函数的用法是相同的。