Ver código fonte

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 anos atrás
pai
commit
f4fccee4d2
2 arquivos alterados com 14 adições e 0 exclusões
  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;