【问题标题】:Compiling with OpenSSL ssl_conn errors编译时出现 OpenSSL ssl_conn 错误
【发布时间】:2010-07-30 21:36:57
【问题描述】:

我正在尝试编译一个使用 OpenSSL 包含的小型 .c 文件,起初我在编译时遇到了问题,但我通过安装 libssl-dev 解决了它并解决了包含错误。

但现在当我尝试编译时,我得到:

‘ssl_conn’ has no member named ‘encrypted’
‘ssl_conn’ has no member named ‘write_seq’
‘ssl_conn’ has no member named ‘read_seq’

错误行的代码是:

ssl_conn* sslCon;
sslCon->encrypted = 0;
sslCon->write_seq = 0;
sslCon->read_seq = 0;

一位朋友告诉我这可能是因为 .c 文件是为旧版本的 OpenSSL 编码的,但我不确定。有人知道这可能是什么原因以及如何解决吗?

【问题讨论】:

  • 我的建议是检查头文件中的 ssl_conn 类型,看看它是否真的有那些出错的成员。
  • 不,它没有它们,但是它们在哪里呢?你知道旧版本的 OpenSSL 是否有它们吗?或者我可能缺少一些库。

标签: c linux openssl compiler-errors


【解决方案1】:

ssl_conn 不是 OpenSSL API 的一部分,而且从来都不是。我只在一些利用 OpenSSL 的示例代码中找到了对它的引用,并且它自己定义了它。假设您没有尝试使用该漏洞利用代码,我的猜测是网上有一个示例浮动,您可以从中获取您尝试编译的代码。因此,请检查您对 ssl_conn 的定义并确保它包含缺少的字段。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-15
    • 1970-01-01
    • 2014-02-07
    • 2023-04-11
    • 1970-01-01
    • 2018-06-18
    相关资源
    最近更新 更多