To make sure the Host: header and the URL provide the same authority
portion when sent to the proxy, strip the default port number from the
URL if one was provided.
Reported-by: Michael Brown
Fixes #6769
Closes #6778
/* Extract the URL to use in the request. Store in STRING_TEMP_URL for
clean-up reasons if the function returns before the free() further
down. */
- uc = curl_url_get(h, CURLUPART_URL, &url, 0);
+ uc = curl_url_get(h, CURLUPART_URL, &url, CURLU_NO_DEFAULT_PORT);
if(uc) {
curl_url_cleanup(h);
return CURLE_OUT_OF_MEMORY;
<verify>
<protocol>
-GET http://www.example.com:80/ HTTP/1.1\r
+GET http://www.example.com/ HTTP/1.1\r
Host: www.example.com\r
Accept: */*\r
Proxy-Connection: Keep-Alive\r