我正在构建一个网络内核扩展,它需要 OpenSSL 库,方法是在我的一些项目文件中包含一些 header 。
问题是 OpenSSL 包含 stdlib.h
(以及其他 header ),它们都会抛出错误(找不到文件)。如果我在项目文件中包含 stdlib.h
,也会发生同样的情况。
我猜这是因为它们在内核中不可用。 那么,我该如何包含它们呢?我错过了什么?
否则,如何在内核中包含 CommonCrypto 或任何加密库?
谢谢!
最佳答案
OpenSSL 和 CommonCrypto 是用户空间库。它们在内核中不可用。
CoreCrypto 的某些部分可在内核中的 <libkern/crypto/…>
下找到。和<corecrypto/…>
。但一般来说,这仅限于加密原语(AES、RSA、SHA 等),而不是 X509 证书解析、 key 交换算法或 TLS 等高级工具。
关于c - 如何在网络内核扩展中使用OpenSSL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45534101/