aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES5
-rw-r--r--RELEASE-NOTES6
-rw-r--r--lib/http_ntlm.c7
3 files changed, 16 insertions, 2 deletions
diff --git a/CHANGES b/CHANGES
index dd1220aef..98c3648d9 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,11 @@
Changelog
+Daniel S (14 August 2007)
+- Andrew Wansink provided an NTLM bugfix: in the case the server sets the flag
+ NTLMFLAG_NEGOTIATE_UNICODE, we need to filter it off because libcurl doesn't
+ UNICODE encode the strings it packs into the NTLM authenticate packet.
+
Daniel S (11 August 2007)
- Allen Pulsifer provided a patch that makes libcurl set the expected download
size earlier when doing HTTP downloads, so that applications and the
diff --git a/RELEASE-NOTES b/RELEASE-NOTES
index a50a7315d..e444a40f7 100644
--- a/RELEASE-NOTES
+++ b/RELEASE-NOTES
@@ -36,8 +36,10 @@ This release includes the following bugfixes:
o AIX 4 and 5 get to use non-blocking sockets
o small POST with NTLM
o resumed file:// transfers
- o CURLOPT_DNS_CACHE_TIMEOUT and CURLOPT_DNS_USE_GLOBAL_CACHE are 64 bit "clean"
+ o CURLOPT_DNS_CACHE_TIMEOUT and CURLOPT_DNS_USE_GLOBAL_CACHE are 64 bit
+ "clean"
o memory leak when handling compressed data streams from broken servers
+ o no NTLM unicode response
This release includes the following known bugs:
@@ -61,6 +63,6 @@ advice from friends like these:
Daniel Cater, Colin Hogben, Jofell Gallardo, Daniel Johnson,
Ralf S. Engelschall, James Housley, Chris Flerackers, Patrick Monnerat,
Jayesh A Shah, Greg Zavertnik, Peter O'Gorman, Greg Morse, Dmitriy Sergeyev,
- Scott Cantor, Allen Pulsifer
+ Scott Cantor, Allen Pulsifer, Andrew Wansink
Thanks! (and sorry if I forgot to mention someone)
diff --git a/lib/http_ntlm.c b/lib/http_ntlm.c
index 863ddf521..e50ace100 100644
--- a/lib/http_ntlm.c
+++ b/lib/http_ntlm.c
@@ -917,6 +917,13 @@ CURLcode Curl_output_ntlm(struct connectdata *conn,
useroff = domoff + domlen;
hostoff = useroff + userlen;
+ /*
+ * In the case the server sets the flag NTLMFLAG_NEGOTIATE_UNICODE, we
+ * need to filter it off because libcurl doesn't UNICODE encode the
+ * strings it packs into the NTLM authenticate packet.
+ */
+ ntlm->flags &= ~NTLMFLAG_NEGOTIATE_UNICODE;
+
/* Create the big type-3 message binary blob */
size = snprintf((char *)ntlmbuf, sizeof(ntlmbuf),
NTLMSSP_SIGNATURE "%c"