diff options
author | Steve Holme <steve_holme@hotmail.com> | 2014-08-14 00:03:45 +0100 |
---|---|---|
committer | Steve Holme <steve_holme@hotmail.com> | 2014-08-14 10:37:01 +0100 |
commit | 4b491c675fa6f73871a525620a23e1bb4a0e9dd3 (patch) | |
tree | e003702d72083620b1f5672632d78f01807607ad /lib/curl_sasl.c | |
parent | 3ec253532ebda3c4cfffaf3f82dec583ec24ec1a (diff) |
sasl_sspi: Added GSSAPI message functions
Diffstat (limited to 'lib/curl_sasl.c')
-rw-r--r-- | lib/curl_sasl.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/curl_sasl.c b/lib/curl_sasl.c index 1068dc8fe..8f6aab2e8 100644 --- a/lib/curl_sasl.c +++ b/lib/curl_sasl.c @@ -53,6 +53,10 @@ /* The last #include file should be: */ #include "memdebug.h" +#if defined(USE_WINDOWS_SSPI) +extern void Curl_sasl_gssapi_cleanup(struct kerberos5data *krb5); +#endif + #if !defined(CURL_DISABLE_CRYPTO_AUTH) && !defined(USE_WINDOWS_SSPI) #define DIGEST_QOP_VALUE_AUTH (1 << 0) #define DIGEST_QOP_VALUE_AUTH_INT (1 << 1) @@ -718,12 +722,17 @@ CURLcode Curl_sasl_create_xoauth2_message(struct SessionHandle *data, */ void Curl_sasl_cleanup(struct connectdata *conn, unsigned int authused) { +#if defined(USE_WINDOWS_SSPI) + /* Cleanup the gssapi structure */ + if(authused == SASL_MECH_GSSAPI) { + Curl_sasl_gssapi_cleanup(&conn->krb5); + } #ifdef USE_NTLM /* Cleanup the ntlm structure */ - if(authused == SASL_MECH_NTLM) { + else if(authused == SASL_MECH_NTLM) { Curl_ntlm_sspi_cleanup(&conn->ntlm); } - (void)conn; +#endif #else /* Reserved for future use */ (void)conn; |