gpt4 book ai didi

c++ - 如何在我的应用中忽略OPENSSL_ENGINES环境变量?

转载 作者:行者123 更新时间:2023-12-03 07:23:08 25 4
gpt4 key购买 nike

我在C++应用程序中使用openssl库。我发现了如何忽略OPENSSL_CONF环境变量。通过指定我自己的配置文件是可能的:

OPENSSL_config("openssl.cnf");
但是 OPENSSL_ENGINES环境变量呢?在我的应用程序中如何忽略它的值(value)?如何防止从此路径加载引擎?
我看一下openssl的源代码。默认情况下,有 OPENSSL_ENGINES变量读取,没有任何条件。
...
if ((load_dir = getenv("OPENSSL_ENGINES")) == 0)
load_dir = ENGINESDIR;
...

最佳答案

OpenSSL似乎没有提供忽略该环境变量的正确方法。解决方法是,您可以在调用ENGINE_by_id()之前将环境变量自己设置为一些虚假值,如下所示:

putenv("OPENSSL_ENGINES=/dev/null");
您将必须小心一点,您选择的虚假值不会在文件系统上作为有效路径存在。取决于您的环境,可以选择 /dev/null

关于c++ - 如何在我的应用中忽略OPENSSL_ENGINES环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64489028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com