Unverified Commit 9d96a5f0 authored by Johannes Schindelin's avatar Johannes Schindelin Committed by Daniel Stenberg
Browse files

version: add the CURL_VERSION_MULTI_SSL feature flag



This new feature flag reports When cURL was built with multiple SSL
backends.

Signed-off-by: default avatarJohannes Schindelin <johannes.schindelin@gmx.de>
parent b180a273
Loading
Loading
Loading
Loading
+15 −4
Original line number Diff line number Diff line
@@ -2420,14 +2420,25 @@ if test -z "$ssl_backends" -o "x$OPT_AXTLS" != xno; then
  test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg"
fi

if test "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$POLARSSL_ENABLED$MBEDTLS_ENABLED$AXTLS_ENABLED$CYASSL_ENABLED$WINSSL_ENABLED$DARWINSSL_ENABLED" = "x"; then
case "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$POLARSSL_ENABLED$MBEDTLS_ENABLED$AXTLS_ENABLED$CYASSL_ENABLED$WINSSL_ENABLED$DARWINSSL_ENABLED" in
x)
  AC_MSG_WARN([SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more.])
  AC_MSG_WARN([Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, or --with-darwinssl to address this.])
else
  # SSL is enabled, genericly
  ;;
x1)
  # one SSL backend is enabled
  AC_SUBST(SSL_ENABLED)
  SSL_ENABLED="1"
fi
  ;;
*)
  # more than one SSL backend is enabled
  AC_SUBST(SSL_ENABLED)
  SSL_ENABLED="1"
  AC_SUBST(CURL_WITH_MULTI_SSL)
  CURL_WITH_MULTI_SSL="1"
  AC_DEFINE(CURL_WITH_MULTI_SSL, 1, [built with multiple SSL backends])
  ;;
esac

if test -n "$ssl_backends"; then
  curl_ssl_msg="enabled ($ssl_backends)"
+5 −1
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
.\" *                            | (__| |_| |  _ <| |___
.\" *                             \___|\___/|_| \_\_____|
.\" *
.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
.\" *
.\" * This software is licensed as described in the file COPYING, which
.\" * you should have received as part of this distribution. The terms
@@ -156,6 +156,10 @@ libcurl ignore cookies with a domain that's on the list.
.IP CURL_VERSION_HTTPS_PROXY
libcurl was built with support for HTTPS-proxy.
(Added in 7.52.0)
.IP CURL_VERSION_MULTI_SSL
libcurl was built with multiple SSL backends. For details, see
\fIcurl_global_sslset(3)\fP.
(Added in 7.56.0)
.RE
\fIssl_version\fP is an ASCII string for the OpenSSL version used. If libcurl
has no SSL support, this is NULL.
+1 −0
Original line number Diff line number Diff line
@@ -840,6 +840,7 @@ CURL_VERSION_KERBEROS4 7.10 7.33.0
CURL_VERSION_KERBEROS5          7.40.0
CURL_VERSION_LARGEFILE          7.11.1
CURL_VERSION_LIBZ               7.10
CURL_VERSION_MULTI_SSL          7.56.0
CURL_VERSION_NTLM               7.10.6
CURL_VERSION_NTLM_WB            7.22.0
CURL_VERSION_PSL                7.47.0
+1 −0
Original line number Diff line number Diff line
@@ -2487,6 +2487,7 @@ typedef struct {
#define CURL_VERSION_PSL          (1<<20) /* Mozilla's Public Suffix List, used
                                             for cookie domain verification */
#define CURL_VERSION_HTTPS_PROXY  (1<<21) /* HTTPS-proxy support built-in */
#define CURL_VERSION_MULTI_SSL    (1<<22) /* Multiple SSL backends available */

 /*
 * NAME curl_version_info()
+3 −0
Original line number Diff line number Diff line
@@ -323,6 +323,9 @@ static curl_version_info_data version_info = {
#endif
#if defined(USE_LIBPSL)
  | CURL_VERSION_PSL
#endif
#if defined(CURL_WITH_MULTI_SSL)
  | CURL_VERSION_MULTI_SSL
#endif
  ,
  NULL, /* ssl_version */
Loading