瀏覽代碼

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 年之前
父節點
當前提交
f4fccee4d2
共有 2 個文件被更改,包括 14 次插入0 次删除
  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;