Previously, request that sent:
GET / HTTP/1.1
Host:
would get a 400. RFC 2616 specifically allows for a "blank" host field.
The read_request code properly handled this, but the fix_hostname in
vhost.c would cause the 400. Now, simply return in fix_hostname when
we see a blank hostname rather than erroring out.
PR: 7441
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94655
13f79535-47bb-0310-9956-
ffa450edef68
apr_port_t port;
apr_status_t rv;
+ /* According to RFC 2616, Host header field CAN be blank. */
+ if (!*r->hostname) {
+ return;
+ }
+
rv = apr_parse_addr_port(&host, &scope_id, &port, r->hostname, r->pool);
if (rv != APR_SUCCESS || scope_id) {
goto bad;