diff --git a/CMakeLists.txt b/CMakeLists.txt index e55c2ab5..22f04e65 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -334,6 +334,9 @@ check_include_file(openssl/err.h HAVE_OPENSSL_ERR_H) check_include_file(openssl/rand.h HAVE_OPENSSL_RAND_H) check_include_file(openssl/conf.h HAVE_OPENSSL_CONF_H) check_include_file(openssl/engine.h HAVE_OPENSSL_ENGINE_H) +check_include_file(openssl/bn.h HAVE_OPENSSL_BN_H) +check_include_file(openssl/dsa.h HAVE_OPENSSL_DSA_H) +check_include_file(openssl/rsa.h HAVE_OPENSSL_RSA_H) set(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_LIBRARIES} ${getdns_system_libs}) check_function_exists(DSA_SIG_set0 HAVE_DSA_SIG_SET0) diff --git a/cmake/include/cmakeconfig.h.in b/cmake/include/cmakeconfig.h.in index cf073211..05ed9553 100644 --- a/cmake/include/cmakeconfig.h.in +++ b/cmake/include/cmakeconfig.h.in @@ -58,6 +58,9 @@ #cmakedefine HAVE_OPENSSL_RAND_H 1 #cmakedefine HAVE_OPENSSL_CONF_H 1 #cmakedefine HAVE_OPENSSL_ENGINE_H 1 +#cmakedefine HAVE_OPENSSL_BN_H 1 +#cmakedefine HAVE_OPENSSL_DSA_H 1 +#cmakedefine HAVE_OPENSSL_RSA_H 1 #cmakedefine HAVE_DSA_SIG_SET0 1 #cmakedefine HAVE_DSA_SET0_PQG 1 diff --git a/src/openssl/keyraw-internal.c b/src/openssl/keyraw-internal.c index 6dab968a..99633e45 100644 --- a/src/openssl/keyraw-internal.c +++ b/src/openssl/keyraw-internal.c @@ -21,10 +21,10 @@ #include #include #ifdef HAVE_OPENSSL_CONF_H -# include +#include #endif #ifdef HAVE_OPENSSL_ENGINE_H -# include +#include #endif #ifdef HAVE_OPENSSL_BN_H #include @@ -35,6 +35,9 @@ #ifdef HAVE_OPENSSL_DSA_H #include #endif +#ifdef HAVE_OPENSSL_RSA_H +#include +#endif #endif /* HAVE_SSL */ #ifdef HAVE_SSL @@ -74,7 +77,6 @@ gldns_key_EVP_load_gost_id(void) if(!e) { /* load it ourself, in case statically linked */ ENGINE_load_builtin_engines(); - ENGINE_load_dynamic(); e = ENGINE_by_id("gost"); } if(!e) { diff --git a/src/tls/val_secalgo.c b/src/tls/val_secalgo.c index c41b9a06..7e91f942 100644 --- a/src/tls/val_secalgo.c +++ b/src/tls/val_secalgo.c @@ -72,6 +72,10 @@ #include #endif +#if defined(HAVE_OPENSSL_DSA_H) && defined(USE_DSA) +#include +#endif + /** fake DSA support for unit tests */ int fake_dsa = 0; /** fake SHA1 support for unit tests */