diff --git a/util/ChangeLog b/util/ChangeLog index e164ed691..a79f7c25d 100644 --- a/util/ChangeLog +++ b/util/ChangeLog @@ -1,3 +1,7 @@ +2003-12-05 David Shaw + + * http.c (send_request): Add a Host: header for virtual hosts. + 2003-12-03 David Shaw * miscutil.c (answer_is_yes_no_default, answer_is_yes_no_quit): diff --git a/util/http.c b/util/http.c index 088c24f59..39bbbfe32 100644 --- a/util/http.c +++ b/util/http.c @@ -504,7 +504,7 @@ send_request( HTTP_HD hd ) return G10ERR_NETWORK; p = build_rel_path( hd->uri ); - request = m_alloc( strlen(server) + strlen(p) + 50 ); + request = m_alloc( strlen(server)*2 + strlen(p) + 50 ); if( http_proxy ) { sprintf( request, "%s http://%s:%hu%s%s HTTP/1.0\r\n", hd->req_type == HTTP_REQ_GET ? "GET" : @@ -513,11 +513,11 @@ send_request( HTTP_HD hd ) server, port, *p == '/'? "":"/", p ); } else { - sprintf( request, "%s %s%s HTTP/1.0\r\n", + sprintf( request, "%s %s%s HTTP/1.0\r\nHost: %s\r\n", hd->req_type == HTTP_REQ_GET ? "GET" : hd->req_type == HTTP_REQ_HEAD? "HEAD": hd->req_type == HTTP_REQ_POST? "POST": "OOPS", - *p == '/'? "":"/", p ); + *p == '/'? "":"/", p, server); } m_free(p); @@ -528,8 +528,6 @@ send_request( HTTP_HD hd ) } - - /**************** * Build the relative path from the parsed URI. * Minimal implementation.