* fix-openssl-linking:
sample/https-client: use ERR_remove_*state() when we have them
Do not check for ERR_remove_thread_state() (do not link ssl into every library)
Closes: #476
(cherry picked from commit
98faf19895bd6aa41c68f7da050179e207f05ae1)
time-test)
if (NOT EVENT__DISABLE_OPENSSL AND OPENSSL_LIBRARIES)
- set(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_LIBRARIES})
- CHECK_FUNCTION_EXISTS_EX(ERR_remove_thread_state EVENT__HAVE_ERR_REMOVE_THREAD_STATE)
- set(CMAKE_REQUIRED_LIBRARIES "")
-
# Special sample with more than one file.
add_executable(https-client
sample/https-client.c
# check if we have and should use openssl
AM_CONDITIONAL(OPENSSL, [test "$enable_openssl" != "no" && test "$have_openssl" = "yes"])
-if test "x$enable_openssl" = "xyes"; then
- AC_SEARCH_LIBS([ERR_remove_thread_state], [crypto eay32],
- [AC_DEFINE(HAVE_ERR_REMOVE_THREAD_STATE, 1, [Define to 1 if you have ERR_remove_thread_stat().])])
-fi
# Add some more warnings which we use in development but not in the
# released versions. (Some relevant gcc versions can't handle these.)
#cmakedefine EVENT__NEED_DLLIMPORT
-/* Define to 1 if you have ERR_remove_thread_stat(). */
-#cmakedefine EVENT__HAVE_ERR_REMOVE_THREAD_STATE
-
/* Define if waitpid() supports WNOWAIT */
#cmakedefine EVENT__HAVE_WAITPID_WITH_WNOWAIT
EVP_cleanup();
ERR_free_strings();
-#ifdef EVENT__HAVE_ERR_REMOVE_THREAD_STATE
- ERR_remove_thread_state(NULL);
-#else
+#if OPENSSL_VERSION_NUMBER < 0x10000000L
ERR_remove_state(0);
+#else
+ ERR_remove_thread_state(NULL);
#endif
+
CRYPTO_cleanup_all_ex_data();
sk_SSL_COMP_free(SSL_COMP_get_compression_methods());