diff --git a/configure.ac b/configure.ac index b78f56d0e..1fa09eea9 100644 --- a/configure.ac +++ b/configure.ac @@ -1248,7 +1248,7 @@ else fi if test x"$want_gss" = xyes; then AC_DEFINE(HAVE_GSSAPI, 1, [if you have GSS-API libraries]) - + HAVE_GSSAPI=1 curl_gss_msg="enabled (MIT Kerberos/Heimdal)" if test -n "$gnu_gss"; then @@ -3356,8 +3356,18 @@ fi if test "x$USE_WINDOWS_SSPI" = "x1"; then SUPPORT_FEATURES="$SUPPORT_FEATURES SSPI" fi + +if test "x$HAVE_GSSAPI" = "x1"; then + SUPPORT_FEATURES="$SUPPORT_FEATURES GSS-API" +fi + +if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" -a \ + \( "x$HAVE_GSSAPI" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \); then + SUPPORT_FEATURES="$SUPPORT_FEATURES SPNEGO" +fi + if test "x$CURL_DISABLE_HTTP" != "x1" -a \ - "x$CURL_DISABLE_CRYPTO_AUTH" != "x1"; then + "x$CURL_DISABLE_CRYPTO_AUTH" != "x1"; then if test "x$USE_SSLEAY" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \ -o "x$GNUTLS_ENABLED" = "x1" -o "x$NSS_ENABLED" = "x1" \ -o "x$DARWINSSL_ENABLED" = "x1"; then @@ -3374,9 +3384,6 @@ fi if test "x$USE_NGHTTP2" = "x1"; then SUPPORT_FEATURES="$SUPPORT_FEATURES HTTP2" fi -if test "x$want_gss" = "xyes"; then - SUPPORT_FEATURES="$SUPPORT_FEATURES GSS-API" -fi AC_SUBST(SUPPORT_FEATURES) diff --git a/include/curl/curl.h b/include/curl/curl.h index 4e981fcc8..80a8217cb 100644 --- a/include/curl/curl.h +++ b/include/curl/curl.h @@ -2234,7 +2234,7 @@ typedef struct { #define CURL_VERSION_GSSNEGOTIATE (1<<5) /* Negotiate auth support */ #define CURL_VERSION_DEBUG (1<<6) /* built with debug capabilities */ #define CURL_VERSION_ASYNCHDNS (1<<7) /* asynchronous dns resolves */ -#define CURL_VERSION_SPNEGO (1<<8) /* SPNEGO auth */ +#define CURL_VERSION_SPNEGO (1<<8) /* SPNEGO auth is supported */ #define CURL_VERSION_LARGEFILE (1<<9) /* supports files bigger than 2GB */ #define CURL_VERSION_IDN (1<<10) /* International Domain Names support */ #define CURL_VERSION_SSPI (1<<11) /* SSPI is supported */ @@ -2243,6 +2243,7 @@ typedef struct { #define CURL_VERSION_TLSAUTH_SRP (1<<14) /* TLS-SRP auth is supported */ #define CURL_VERSION_NTLM_WB (1<<15) /* NTLM delegating to winbind helper */ #define CURL_VERSION_HTTP2 (1<<16) /* HTTP2 support built-in */ +#define CURL_VERSION_GSSAPI (1<<17) /* GSS-API is supported */ /* * NAME curl_version_info() diff --git a/lib/version.c b/lib/version.c index c25b55b97..7f0bc3617 100644 --- a/lib/version.c +++ b/lib/version.c @@ -250,6 +250,12 @@ static curl_version_info_data version_info = { #if defined(USE_NTLM) && defined(NTLM_WB_ENABLED) | CURL_VERSION_NTLM_WB #endif +#ifdef USE_SPNEGO + | CURL_VERSION_SPNEGO +#endif +#ifdef HAVE_GSSAPI + | CURL_VERSION_GSSAPI +#endif #ifdef USE_WINDOWS_SSPI | CURL_VERSION_SSPI #endif diff --git a/src/tool_help.c b/src/tool_help.c index 79352986e..ddad01439 100644 --- a/src/tool_help.c +++ b/src/tool_help.c @@ -262,10 +262,12 @@ static const struct feat feats[] = { {"IDN", CURL_VERSION_IDN}, {"IPv6", CURL_VERSION_IPV6}, {"Largefile", CURL_VERSION_LARGEFILE}, + {"SSPI", CURL_VERSION_SSPI}, + {"GSS-API", CURL_VERSION_GSSAPI}, + {"SPNEGO", CURL_VERSION_SPNEGO}, {"NTLM", CURL_VERSION_NTLM}, {"NTLM_WB", CURL_VERSION_NTLM_WB}, {"SSL", CURL_VERSION_SSL}, - {"SSPI", CURL_VERSION_SSPI}, {"krb4", CURL_VERSION_KERBEROS4}, {"libz", CURL_VERSION_LIBZ}, {"CharConv", CURL_VERSION_CONV},