aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2006-09-09 11:45:27 +0000
committerDaniel Stenberg <daniel@haxx.se>2006-09-09 11:45:27 +0000
commitb0f6e7cee48365d6b0cc9b52eeb8c151f2d86814 (patch)
tree27db0cdd266a567acb8ca9f65d87bfcd29d51b79 /lib
parented72d4e104cb7bf5b279b21550bf20c420819534 (diff)
Michele Bini fixed how the hostname is put in NTLM packages. As servers
don't expect fully qualified names we need to cut them off at the first dot.
Diffstat (limited to 'lib')
-rw-r--r--lib/http_ntlm.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/http_ntlm.c b/lib/http_ntlm.c
index 24b89dded..7444a400c 100644
--- a/lib/http_ntlm.c
+++ b/lib/http_ntlm.c
@@ -277,6 +277,7 @@ CURLntlm Curl_input_ntlm(struct connectdata *conn,
fprintf(stderr, "\n nonce=");
print_hex(stderr, ntlm->nonce, 8);
fprintf(stderr, "\n****\n");
+ fprintf(stderr, "**** Header %s\n ", header);
});
free(buffer);
@@ -708,6 +709,7 @@ CURLcode Curl_output_ntlm(struct connectdata *conn,
*allocuserpwd = aprintf("%sAuthorization: NTLM %s\r\n",
proxy?"Proxy-":"",
base64);
+ DEBUG_OUT(fprintf(stderr, "**** Header %s\n ", *allocuserpwd));
free(base64);
}
else
@@ -798,6 +800,13 @@ CURLcode Curl_output_ntlm(struct connectdata *conn,
hostlen = 0;
}
else {
+ /* If the workstation if configured with a full DNS name (i.e.
+ * workstation.somewhere.net) gethostname() returns the fully qualified
+ * name, which NTLM doesn't like.
+ */
+ char *dot = strchr(host, '.');
+ if (dot)
+ *dot = '\0';
hostlen = strlen(host);
}
@@ -1011,6 +1020,7 @@ CURLcode Curl_output_ntlm(struct connectdata *conn,
*allocuserpwd = aprintf("%sAuthorization: NTLM %s\r\n",
proxy?"Proxy-":"",
base64);
+ DEBUG_OUT(fprintf(stderr, "**** %s\n ", *allocuserpwd));
free(base64);
}
else