From: Nikita Popov Date: Wed, 12 Jun 2019 13:26:06 +0000 (+0200) Subject: Don't warn if libcurl SSL library not detected X-Git-Tag: php-7.4.0alpha2~118 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=bc8fece0cf43be05dcf5022b851d5429c8977401;p=php Don't warn if libcurl SSL library not detected 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. --- diff --git a/ext/curl/config.m4 b/ext/curl/config.m4 index 9c78eb637e..1af960ee33 100644 --- a/ext/curl/config.m4 +++ b/ext/curl/config.m4 @@ -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 -#include - -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]) ], [ diff --git a/ext/curl/interface.c b/ext/curl/interface.c index 5b6e5f814c..5db1be99e8 100644 --- a/ext/curl/interface.c +++ b/ext/curl/interface.c @@ -47,27 +47,17 @@ # ifdef PHP_WIN32 # define PHP_CURL_NEED_OPENSSL_TSL # include -# else /* !PHP_WIN32 */ -# if defined(HAVE_CURL_OPENSSL) -# if defined(HAVE_OPENSSL_CRYPTO_H) -# define PHP_CURL_NEED_OPENSSL_TSL -# include -# 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 # 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 */ /* }}} */