aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2005-11-14 22:10:52 +0000
committerDaniel Stenberg <daniel@haxx.se>2005-11-14 22:10:52 +0000
commit92c0de518eee482c8a9c516ec5c1e6b447b2a1a5 (patch)
tree3728e7e2e1a8c15ade7236f84b1f8f131174cff3
parentff9645651356e89a09ecf2faaa32bbed8f556f02 (diff)
Quagmire reported that he needed to raise a NTLM buffer for SSPI to work
properly for a case, and so we did. We raised it even for non-SSPI builds but it should not do any harm. http://curl.haxx.se/bug/view.cgi?id=1356715
-rw-r--r--CHANGES4
-rw-r--r--lib/http_ntlm.c18
2 files changed, 14 insertions, 8 deletions
diff --git a/CHANGES b/CHANGES
index a77ca718f..1cc1088c0 100644
--- a/CHANGES
+++ b/CHANGES
@@ -9,6 +9,10 @@
Daniel (14 November 2005)
+- Quagmire reported that he needed to raise a NTLM buffer for SSPI to work
+ properly for a case, and so we did. We raised it even for non-SSPI builds
+ but it should not do any harm. http://curl.haxx.se/bug/view.cgi?id=1356715
+
- Jan Kunder's debian bug report
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=338680 identified a weird
error message for when you try to upload a file and the requested directory
diff --git a/lib/http_ntlm.c b/lib/http_ntlm.c
index 1d404345a..816a4fc42 100644
--- a/lib/http_ntlm.c
+++ b/lib/http_ntlm.c
@@ -342,7 +342,7 @@ CURLcode Curl_output_ntlm(struct connectdata *conn,
#endif
size_t size;
char *base64=NULL;
- unsigned char ntlmbuf[256]; /* enough, unless the host/domain is very long */
+ unsigned char ntlmbuf[512]; /* enough, unless the host/domain is very long */
/* point to the address of the pointer that holds the string to sent to the
server, which is for a plain host or for a HTTP proxy */
@@ -477,13 +477,15 @@ CURLcode Curl_output_ntlm(struct connectdata *conn,
buf.BufferType = SECBUFFER_TOKEN;
buf.pvBuffer = ntlmbuf;
- status = s_pSecFn->InitializeSecurityContext(&ntlm->handle, NULL, (char *) host,
- ISC_REQ_CONFIDENTIALITY |
- ISC_REQ_REPLAY_DETECT |
- ISC_REQ_CONNECTION,
- 0, SECURITY_NETWORK_DREP, NULL, 0,
- &ntlm->c_handle, &desc, &attrs, &tsDummy
- );
+ status = s_pSecFn->InitializeSecurityContext(&ntlm->handle, NULL,
+ (char *) host,
+ ISC_REQ_CONFIDENTIALITY |
+ ISC_REQ_REPLAY_DETECT |
+ ISC_REQ_CONNECTION,
+ 0, SECURITY_NETWORK_DREP,
+ NULL, 0,
+ &ntlm->c_handle, &desc,
+ &attrs, &tsDummy);
if (status == SEC_I_COMPLETE_AND_CONTINUE ||
status == SEC_I_CONTINUE_NEEDED) {