From b7e213b5cbf65f0b2647304f9bad217a98ccfabd Mon Sep 17 00:00:00 2001 From: dmiller Date: Tue, 7 Feb 2017 20:10:02 +0000 Subject: [PATCH] Fix compatibility with LibreSSL; new checks skipped initialization code --- ncat/ncat_ssl.c | 2 +- ncat/test/test-wildcard.c | 10 +++++----- nse_openssl.cc | 2 +- nsock/src/nsock_ssl.c | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/ncat/ncat_ssl.c b/ncat/ncat_ssl.c index 05efe1042..c0dfcfabb 100644 --- a/ncat/ncat_ssl.c +++ b/ncat/ncat_ssl.c @@ -173,7 +173,7 @@ SSL_CTX *setup_ssl_listen(void) if (sslctx) goto done; -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined LIBRESSL_VERSION_NUMBER SSL_library_init(); OpenSSL_add_all_algorithms(); ERR_load_crypto_strings(); diff --git a/ncat/test/test-wildcard.c b/ncat/test/test-wildcard.c index 75ab2adda..b9a2ef3e5 100644 --- a/ncat/test/test-wildcard.c +++ b/ncat/test/test-wildcard.c @@ -255,11 +255,11 @@ static int set_dNSNames(X509 *cert, const struct lstr dNSNames[]) if (gen_name == NULL) goto stack_err; gen_name->type = GEN_DNS; - #if OPENSSL_VERSION_NUMBER < 0x10100000L - gen_name->d.dNSName = M_ASN1_IA5STRING_new(); - #else +#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined LIBRESSL_VERSION_NUMBER gen_name->d.dNSName = ASN1_IA5STRING_new(); - #endif +#else + gen_name->d.dNSName = M_ASN1_IA5STRING_new(); +#endif if (gen_name->d.dNSName == NULL) goto name_err; if (ASN1_STRING_set(gen_name->d.dNSName, name->s, name->len) == 0) @@ -581,7 +581,7 @@ int main(void) { unsigned int i; -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined LIBRESSL_VERSION_NUMBER SSL_library_init(); ERR_load_crypto_strings(); SSL_load_error_strings(); diff --git a/nse_openssl.cc b/nse_openssl.cc index 7f75a1718..54cc69301 100644 --- a/nse_openssl.cc +++ b/nse_openssl.cc @@ -602,7 +602,7 @@ static const struct luaL_Reg openssllib[] = { LUALIB_API int luaopen_openssl(lua_State *L) { -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined LIBRESSL_VERSION_NUMBER OpenSSL_add_all_algorithms(); ERR_load_crypto_strings(); #else diff --git a/nsock/src/nsock_ssl.c b/nsock/src/nsock_ssl.c index 624cd3a99..863542bb0 100644 --- a/nsock/src/nsock_ssl.c +++ b/nsock/src/nsock_ssl.c @@ -84,7 +84,7 @@ extern struct timeval nsock_tod; static SSL_CTX *ssl_init_common() { SSL_CTX *ctx; -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined LIBRESSL_VERSION_NUMBER SSL_load_error_strings(); SSL_library_init(); #endif