This PR replaces Pr #413, which included too many unrelated commits. The changes affect src\esni.c and t\openssl.c. The file esni.c is only used in tests of ESNI with Visual Studio; the changes there handle the use of providers instead of engines when using OpenSSL 3.0. There are two minor change in t/openssl.c. First, not try using the engine APIs and load the default module instead when using OpenSSLv3 -- as written, the code relied only on a OPENSSL_NO_ENGINE variable, which was not automatically set when using OpenSSL 3.0. Second, undefining the variable OPENSSL_API_COMPAT before including lib/openssl.c, because that variable is defined again inside lib/openssl.c, and Visual Studio protests against redefinition.
This PR replaces Pr #413, which included too many unrelated commits. The changes affect
src\esni.c
andt\openssl.c
. The fileesni.c
is only used in tests of ESNI with Visual Studio; the changes there handle the use of providers instead of engines when using OpenSSL 3.0. There are two minor change int/openssl.c
. First, not try using theengine
APIs and load the default module instead when using OpenSSLv3 -- as written, the code relied only on aOPENSSL_NO_ENGINE
variable, which was not automatically set when using OpenSSL 3.0. Second, undefining the variableOPENSSL_API_COMPAT
before includinglib/openssl.c
, because that variable is defined again insidelib/openssl.c
, and Visual Studio protests against redefinition.The changes resolve issue #412.