commit ad4dcd7d1ac55007768a37b532e98e3628bbef0f Author: Nick Mathewson nickm@torproject.org Date: Mon Oct 2 12:53:13 2017 -0400
Fix our "not an HTTP Proxy" message in light of HTTPTunnelPort
When we added HTTPTunnelPort, the answer that we give when you try to use your SOCKSPort as an HTTP proxy became wrong. Now we explain that Tor sorta _is_ an HTTP proxy, but a SOCKSPort isn't.
I have left the status line the same, in case anything is depending on it. I have removed the extra padding for Internet Explorer, since the message is well over 512 bytes without it.
Fixes bug 23678; bugfix on 0.3.2.1-alpha. --- changes/bug23678 | 7 +++++++ src/or/proto_socks.c | 19 ++++++++++--------- 2 files changed, 17 insertions(+), 9 deletions(-)
diff --git a/changes/bug23678 b/changes/bug23678 new file mode 100644 index 000000000..8138ea71e --- /dev/null +++ b/changes/bug23678 @@ -0,0 +1,7 @@ + o Minor bugfixes (warnings): + - When we get an HTTP request on a SOCKS port, tell the user about + the new HTTPTunnelPort option. Previously, we would give a + "Tor is not an HTTP Proxy" message, which stopped being true when + HTTPTunnelPort was introduced. Fixes bug 23678; bugfix on + 0.3.2.1-alpha. + diff --git a/src/or/proto_socks.c b/src/or/proto_socks.c index 4189c0c66..7649fcc4b 100644 --- a/src/or/proto_socks.c +++ b/src/or/proto_socks.c @@ -160,23 +160,23 @@ static const char SOCKS_PROXY_IS_NOT_AN_HTTP_PROXY_MSG[] = "Content-Type: text/html; charset=iso-8859-1\r\n\r\n" "<html>\n" "<head>\n" - "<title>Tor is not an HTTP Proxy</title>\n" + "<title>This is a SOCKS Proxy, Not An HTTP Proxy</title>\n" "</head>\n" "<body>\n" - "<h1>Tor is not an HTTP Proxy</h1>\n" + "<h1>This is a SOCKs proxy, not an HTTP proxy.</h1>\n" "<p>\n" - "It appears you have configured your web browser to use Tor as " - "an HTTP proxy.\n\n" - "This is not correct: Tor is a SOCKS proxy, not an HTTP proxy.\n" + "It appears you have configured your web browser to use this Tor port as\n" + "an HTTP proxy.\n" + "</p><p>\n" + "This is not correct: This port is configured as a SOCKS proxy, not\n" + "an HTTP proxy. If you need an HTTP proxy tunnel, use the HTTPTunnelPort\n" + "configuration option in place of, or in addition to, SOCKSPort.\n" "Please configure your client accordingly.\n" "</p>\n" "<p>\n" "See <a href="https://www.torproject.org/documentation.html%5C%22%3E" "https://www.torproject.org/documentation.html</a> for more " "information.\n" - "<!-- Plus this comment, to make the body response more than 512 bytes, so " - " IE will be willing to display it. Comment comment comment comment " - " comment comment comment comment comment comment comment comment.-->\n" "</p>\n" "</body>\n" "</html>\n"; @@ -544,7 +544,8 @@ parse_socks(const char *data, size_t datalen, socks_request_t *req, /* fall through */ default: /* version is not socks4 or socks5 */ log_warn(LD_APP, - "Socks version %d not recognized. (Tor is not an http proxy.)", + "Socks version %d not recognized. (This port is not an " + "HTTP proxy; did you want to use HTTPTunnelPort?)", *(data)); { /* Tell the controller the first 8 bytes. */
tor-commits@lists.torproject.org