diff options
author | Erlang/OTP <[email protected]> | 2018-05-07 12:49:45 +0200 |
---|---|---|
committer | Erlang/OTP <[email protected]> | 2018-05-07 12:49:45 +0200 |
commit | cc0747c32f23b51cd55a8a3b33517eaa7a2b3f9d (patch) | |
tree | 9f204c948a5745fa8b7e87e5a4235b67c4d5d2d5 /lib/crypto/c_src/crypto.c | |
parent | a6a52a3ef5047d7f425b6797e70fec77cfad41e3 (diff) | |
parent | cb1a8a13adcf53ff08a9ea7023b24c760885f7d4 (diff) | |
download | otp-cc0747c32f23b51cd55a8a3b33517eaa7a2b3f9d.tar.gz otp-cc0747c32f23b51cd55a8a3b33517eaa7a2b3f9d.tar.bz2 otp-cc0747c32f23b51cd55a8a3b33517eaa7a2b3f9d.zip |
Merge branch 'hans/crypto/OPENSSL_NO_EC/OTP-15073' into maint-20
* hans/crypto/OPENSSL_NO_EC/OTP-15073:
crypto: Disable test_engine if engine is disabled
crypto: disable engine if OPENSSL_NO_EC* is set If that flag is set, and openssl/engine.h is included, there will be an erro further down in files included by engine.h
Diffstat (limited to 'lib/crypto/c_src/crypto.c')
-rw-r--r-- | lib/crypto/c_src/crypto.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/lib/crypto/c_src/crypto.c b/lib/crypto/c_src/crypto.c index 00292c795d..94a207cba6 100644 --- a/lib/crypto/c_src/crypto.c +++ b/lib/crypto/c_src/crypto.c @@ -60,7 +60,6 @@ #include <openssl/rand.h> #include <openssl/evp.h> #include <openssl/hmac.h> -#include <openssl/engine.h> #include <openssl/err.h> /* Helper macro to construct a OPENSSL_VERSION_NUMBER. @@ -125,10 +124,6 @@ #include <openssl/modes.h> #endif -#if OPENSSL_VERSION_NUMBER >= PACKED_OPENSSL_VERSION(0,9,8,'h') -#define HAS_ENGINE_SUPPORT -#endif - #include "crypto_callback.h" #if OPENSSL_VERSION_NUMBER >= PACKED_OPENSSL_VERSION_PLAIN(0,9,8) \ @@ -189,6 +184,19 @@ # undef HAVE_RSA_SSLV23_PADDING #endif +#if OPENSSL_VERSION_NUMBER >= PACKED_OPENSSL_VERSION(0,9,8,'h') \ + && defined(HAVE_EC) +/* If OPENSSL_NO_EC is set, there will be an error in ec.h included from engine.h + So if EC is disabled, you can't use Engine either.... +*/ +# define HAS_ENGINE_SUPPORT +#endif + + +#if defined(HAS_ENGINE_SUPPORT) +# include <openssl/engine.h> +#endif + #if defined(HAVE_CMAC) #include <openssl/cmac.h> #endif |