diff --git a/configure.in b/configure.in
index a060811..00b7f8b 100644
--- a/configure.in
+++ b/configure.in
@@ -535,7 +535,7 @@ AC_ARG_WITH(openssl,
 	    [LIBS="$LIBS -lssl -lcrypto"
 	    AC_MSG_CHECKING(for openssl libraries -lssl and -lcrypto)
 	    AC_TRY_LINK([#include <openssl/ssl.h>
-		],[SSL_library_init()],
+		],[SSL_CTX_new(NULL)],
 		[AC_MSG_RESULT(yes)
 		cons_with_openssl="YES"
 		AC_DEFINE(HAVE_OPENSSL)
diff --git a/conserver/cutil.c b/conserver/cutil.c
index af8196c..dcfe333 100644
--- a/conserver/cutil.c
+++ b/conserver/cutil.c
@@ -57,7 +57,9 @@ Bye(int status)
 {
     DestroyDataStructures();
 #if HAVE_OPENSSL
+# if OPENSSL_VERSION_NUMBER < 0x10100000L
     ERR_free_strings();
+# endif
 #endif
     exit(status);
 }
diff --git a/conserver/cutil.h b/conserver/cutil.h
index 899da7a..63aef65 100644
--- a/conserver/cutil.h
+++ b/conserver/cutil.h
@@ -7,6 +7,8 @@
 #include <stdarg.h>
 #if HAVE_OPENSSL
 # include <openssl/ssl.h>
+# include <openssl/bn.h>
+# include <openssl/dh.h>
 # include <openssl/err.h>
 # if OPENSSL_VERSION_NUMBER < 0x10100000L
 #  define TLS_method SSLv23_method
