http: always send Host: header as first header

...after the method line:

 "Since the Host field-value is critical information for handling a
 request, a user agent SHOULD generate Host as the first header field
 following the request-line." / RFC 7230 section 5.4

Additionally, this will also make libcurl ignore multiple specified
custom Host: headers and only use the first one. Test 1121 has been
updated accordingly

Bug: http://curl.haxx.se/bug/view.cgi?id=1491
Reported-by: Rainer Canavan
This commit is contained in:
Daniel Stenberg
2015-03-12 00:50:46 +01:00
parent 143acd6222
commit a5d994941c
121 changed files with 234 additions and 229 deletions

View File

@@ -59,10 +59,10 @@ http://deathstar.another.galaxy/184 -L -H "Host: another.visitor.stay.a.while.st
</strip>
<protocol>
GET http://deathstar.another.galaxy/184 HTTP/1.1
Host: another.visitor.stay.a.while.stay.foreeeeeever
User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.6b zlib/1.1.4 libidn/0.4.6
Accept: */*
Proxy-Connection: Keep-Alive
Host: another.visitor.stay.a.while.stay.foreeeeeever
GET http://yet.another.host/184 HTTP/1.1
Host: yet.another.host