[LEDE-DEV] [PATCH][uclient] uclient-http: send correct "Host:" header if port is set

Alexander Couzens lynxis at fe80.eu
Wed Nov 30 09:49:10 PST 2016


When connecting to a website with a special port, uclient-fetch connects
to the correct port, but is sending an incorrect Host: header without
the corresponding port.

Signed-off-by: Alexander Couzens <lynxis at fe80.eu>
---
 uclient-http.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/uclient-http.c b/uclient-http.c
index 899f367..8d26bd4 100644
--- a/uclient-http.c
+++ b/uclient-http.c
@@ -569,9 +569,11 @@ uclient_http_send_headers(struct uclient_http *uh)
 
 	ustream_printf(uh->us,
 		"%s %s HTTP/1.1\r\n"
-		"Host: %s\r\n",
+		"Host: %s%s%s\r\n",
 		request_types[req_type],
-		url->location, url->host);
+		url->location, url->host,
+		url->port ? ":" : "",
+		url->port ? url->port : "");
 
 	blobmsg_for_each_attr(cur, uh->headers.head, rem)
 		ustream_printf(uh->us, "%s: %s\r\n", blobmsg_name(cur), (char *) blobmsg_data(cur));
-- 
2.10.2




More information about the Lede-dev mailing list