]> granicus.if.org Git - php/commitdiff
Don't warn if libcurl SSL library not detected
authorNikita Popov <nikita.ppv@gmail.com>
Wed, 12 Jun 2019 13:26:06 +0000 (15:26 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Wed, 12 Jun 2019 13:26:50 +0000 (15:26 +0200)
libcurl may link against 7 different ssl libraries, all of which
are thread-safe -- apart from openssl, of course. We check for
openssl and register locking callbacks in that case, but we should
not warn if any other library is used.

ext/curl/config.m4
ext/curl/interface.c

index 9c78eb637eb3590d9a64ced19e40380d7c2b6da4..1af960ee33587f440c487c8dc4b3f45b260bb3d5 100644 (file)
@@ -50,35 +50,8 @@ int main(int argc, char *argv[])
 }
     ]])],[
       AC_MSG_RESULT([yes])
-      AC_CHECK_HEADERS([openssl/crypto.h], [
-        AC_DEFINE([HAVE_CURL_OPENSSL], [1], [Have cURL with OpenSSL support])
-      ])
-    ], [
-      AC_MSG_RESULT([no])
-    ], [
-      AC_MSG_RESULT([no])
-    ])
-
-    AC_MSG_CHECKING([for gnutls support in libcurl])
-    AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#include <strings.h>
-#include <curl/curl.h>
-
-int main(int argc, char *argv[])
-{
-  curl_version_info_data *data = curl_version_info(CURLVERSION_NOW);
-
-  if (data && data->ssl_version && *data->ssl_version) {
-    const char *ptr = data->ssl_version;
-
-    while(*ptr == ' ') ++ptr;
-    return strncasecmp(ptr, "GnuTLS", sizeof("GnuTLS")-1);
-  }
-  return 1;
-}
-]])], [
-      AC_MSG_RESULT([yes])
-      AC_DEFINE([HAVE_CURL_GNUTLS], [1], [Have cURL with GnuTLS support])
+      AC_DEFINE([HAVE_CURL_OPENSSL], [1], [Have cURL with OpenSSL support])
+      AC_CHECK_HEADERS([openssl/crypto.h])
     ], [
       AC_MSG_RESULT([no])
     ], [
index 5b6e5f814c8ae9aa89b777eacc520aa3693fbf55..5db1be99e8b5ad9766115c7d4f2a57652aa7e0b4 100644 (file)
 # ifdef PHP_WIN32
 #  define PHP_CURL_NEED_OPENSSL_TSL
 #  include <openssl/crypto.h>
-# else /* !PHP_WIN32 */
-#  if defined(HAVE_CURL_OPENSSL)
-#   if defined(HAVE_OPENSSL_CRYPTO_H)
-#    define PHP_CURL_NEED_OPENSSL_TSL
-#    include <openssl/crypto.h>
-#   else
-#    warning \
-       "libcurl was compiled with OpenSSL support, but configure could not find " \
-       "openssl/crypto.h; thus no SSL crypto locking callbacks will be set, which may " \
-       "cause random crashes on SSL requests"
-#   endif
-#  elif defined(HAVE_CURL_GNUTLS)
-    /* Modern versions of GnuTLS use the nette backend rather than gcrypt, so there
-        * is nothing to do here anymore. */
+# elif defined(HAVE_CURL_OPENSSL)
+#  if defined(HAVE_OPENSSL_CRYPTO_H)
+#   define PHP_CURL_NEED_OPENSSL_TSL
+#   include <openssl/crypto.h>
 #  else
 #   warning \
-       "libcurl was compiled with SSL support, but configure could not determine which" \
-       "library was used; thus no SSL crypto locking callbacks will be set, which may " \
+       "libcurl was compiled with OpenSSL support, but configure could not find " \
+       "openssl/crypto.h; thus no SSL crypto locking callbacks will be set, which may " \
        "cause random crashes on SSL requests"
-#  endif /* HAVE_CURL_OPENSSL || HAVE_CURL_GNUTLS */
-# endif /* PHP_WIN32 */
+#  endif
+# endif /* HAVE_CURL_OPENSSL */
 #endif /* ZTS && HAVE_CURL_SSL */
 /* }}} */