Browse Source

Include a Host: header with any HTTP/1.1 proxy request

Bugfix on 0.2.2.1-alpha, which added the orginal HTTP proxy
authentication code.  Fix for bug 5593.
Nick Mathewson 12 years ago
parent
commit
dd3f4f1bdb
2 changed files with 8 additions and 2 deletions
  1. 3 0
      changes/bug5593
  2. 5 2
      src/or/connection.c

+ 3 - 0
changes/bug5593

@@ -0,0 +1,3 @@
+  o Minor bugfixes:
+    - When sending an HTTP/1.1 proxy request, include a Host header.
+      Fixes bug 5593; bugfix on 0.2.2.1-alpha.

+ 5 - 2
src/or/connection.c

@@ -1465,10 +1465,13 @@ connection_proxy_connect(connection_t *conn, int type)
       }
 
       if (base64_authenticator) {
+        const char *addr = fmt_addr(&conn->addr);
         tor_snprintf(buf, sizeof(buf), "CONNECT %s:%d HTTP/1.1\r\n"
+                     "Host: %s:%d\r\n"
                      "Proxy-Authorization: Basic %s\r\n\r\n",
-                     fmt_addr(&conn->addr),
-                     conn->port, base64_authenticator);
+                     addr, conn->port,
+                     addr, conn->port,
+                     base64_authenticator);
         tor_free(base64_authenticator);
       } else {
         tor_snprintf(buf, sizeof(buf), "CONNECT %s:%d HTTP/1.0\r\n\r\n",