Browse Source

Add a warning for using HTTPProxy with no other proxy.

From what I can tell, this configuration is usually a mistake, and
leads people to think that all their traffic is getting proxied when
in fact practically none of it is.  Resolves the issue behind "bug"
4663.
Nick Mathewson 13 years ago
parent
commit
f4fccee4d2
2 changed files with 14 additions and 0 deletions
  1. 5 0
      changes/bug4663
  2. 9 0
      src/or/config.c

+ 5 - 0
changes/bug4663

@@ -0,0 +1,5 @@
+  o Minor features:
+    - Warn the user when HTTPProxy, but no other proxy type, is
+      configured. This can cause surprising behavior: it doesn't send
+      all of Tor's traffic over the HTTPProxy--it sends unencrypted
+      directory traffic only. Resolves ticket 4663.

+ 9 - 0
src/or/config.c

@@ -3889,6 +3889,15 @@ options_validate(or_options_t *old_options, or_options_t *options,
     REJECT("You have configured more than one proxy type. "
            "(Socks4Proxy|Socks5Proxy|HTTPSProxy|ClientTransportPlugin)");
 
+  /* Check if the proxies will give surprising behavior. */
+  if (options->HTTPProxy && !(options->Socks4Proxy ||
+                              options->Socks5Proxy ||
+                              options->HTTPSProxy)) {
+    log_warn(LD_CONFIG, "HTTPProxy configured, but no SOCKS proxy or "
+             "HTTPS proxy configured. Watch out: this configuration will "
+             "proxy unencrypted directory connections only.");
+  }
+
   if (options->Socks5ProxyUsername) {
     size_t len;