diff options
Diffstat (limited to 'lib/vauth')
-rw-r--r-- | lib/vauth/digest_sspi.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/vauth/digest_sspi.c b/lib/vauth/digest_sspi.c index 91d18c992..f07581ec7 100644 --- a/lib/vauth/digest_sspi.c +++ b/lib/vauth/digest_sspi.c @@ -38,6 +38,7 @@ #include "sendf.h" #include "strdup.h" #include "strcase.h" +#include "strerror.h" /* The last #include files should be: */ #include "curl_memory.h" @@ -220,6 +221,8 @@ CURLcode Curl_auth_create_digest_md5_message(struct Curl_easy *data, status == SEC_I_COMPLETE_AND_CONTINUE) s_pSecFn->CompleteAuthToken(&credentials, &resp_desc); else if(status != SEC_E_OK && status != SEC_I_CONTINUE_NEEDED) { + char buffer[STRERROR_LEN]; + s_pSecFn->FreeCredentialsHandle(&credentials); Curl_sspi_free_identity(p_identity); free(spn); @@ -229,6 +232,9 @@ CURLcode Curl_auth_create_digest_md5_message(struct Curl_easy *data, if(status == SEC_E_INSUFFICIENT_MEMORY) return CURLE_OUT_OF_MEMORY; + infof(data, "schannel: InitializeSecurityContext failed: %s\n", + Curl_sspi_strerror(status, buffer, sizeof(buffer))); + return CURLE_AUTH_ERROR; } @@ -611,6 +617,8 @@ CURLcode Curl_auth_create_digest_http_message(struct Curl_easy *data, status == SEC_I_COMPLETE_AND_CONTINUE) s_pSecFn->CompleteAuthToken(&credentials, &resp_desc); else if(status != SEC_E_OK && status != SEC_I_CONTINUE_NEEDED) { + char buffer[STRERROR_LEN]; + s_pSecFn->FreeCredentialsHandle(&credentials); Curl_sspi_free_identity(p_identity); @@ -621,6 +629,9 @@ CURLcode Curl_auth_create_digest_http_message(struct Curl_easy *data, if(status == SEC_E_INSUFFICIENT_MEMORY) return CURLE_OUT_OF_MEMORY; + infof(data, "schannel: InitializeSecurityContext failed: %s\n", + Curl_sspi_strerror(status, buffer, sizeof(buffer))); + return CURLE_AUTH_ERROR; } |