[or-cvs] r17658: {tor} backport r17657 (in tor/branches/tor-0_2_0-patches: . src/or)

arma at seul.org arma at seul.org
Wed Dec 17 22:39:10 UTC 2008


Author: arma
Date: 2008-12-17 17:39:10 -0500 (Wed, 17 Dec 2008)
New Revision: 17658

Modified:
   tor/branches/tor-0_2_0-patches/ChangeLog
   tor/branches/tor-0_2_0-patches/src/or/config.c
Log:
backport r17657


Modified: tor/branches/tor-0_2_0-patches/ChangeLog
===================================================================
--- tor/branches/tor-0_2_0-patches/ChangeLog	2008-12-17 22:32:17 UTC (rev 17657)
+++ tor/branches/tor-0_2_0-patches/ChangeLog	2008-12-17 22:39:10 UTC (rev 17658)
@@ -37,6 +37,12 @@
     - Fix another case of assuming, when a specific exit is requested,
       that we know more than the user about what hosts it allows.
       Fixes one case of bug 752.  Patch from rovv.
+    - Clip the MaxCircuitDirtiness config option to a minimum of 10
+      seconds. Warn the user if lower values are given in the
+      configuration. Bugfix on 0.1.0.1-rc. Patch by Sebastian.
+    - Clip the CircuitBuildTimeout to a minimum of 30 seconds. Warn the
+      user if lower values are given in the configuration. Bugfix on
+      0.1.1.17-rc. Patch by Sebastian.
 
   o Minor features:
     - Report the case where all signatures in a detached set are rejected

Modified: tor/branches/tor-0_2_0-patches/src/or/config.c
===================================================================
--- tor/branches/tor-0_2_0-patches/src/or/config.c	2008-12-17 22:32:17 UTC (rev 17657)
+++ tor/branches/tor-0_2_0-patches/src/or/config.c	2008-12-17 22:39:10 UTC (rev 17658)
@@ -2681,6 +2681,15 @@
 /** Highest allowable value for RendPostPeriod. */
 #define MAX_DIR_PERIOD (MIN_ONION_KEY_LIFETIME/2)
 
+/** Lowest allowable value for CircuitBuildTimeout; values too low will
+ * increase network load because of failing connections being retried, and
+ * might prevent users from connecting to the network at all. */
+#define MIN_CIRCUIT_BUILD_TIMEOUT 30
+
+/** Lowest allowable value for MaxCircuitDirtiness; if this is too low, Tor
+ * will generate too many circuits and potentially overload the network. */
+#define MIN_MAX_CIRCUIT_DIRTINESS 10
+
 /** Return 0 if every setting in <b>options</b> is reasonable, and a
  * permissible transition from <b>old_options</b>. Else return -1.
  * Should have no side effects, except for normalizing the contents of
@@ -3084,6 +3093,18 @@
     options->RendPostPeriod = MAX_DIR_PERIOD;
   }
 
+  if (options->CircuitBuildTimeout < MIN_CIRCUIT_BUILD_TIMEOUT) {
+    log(LOG_WARN, LD_CONFIG, "CircuitBuildTimeout option is too short; "
+      "raising to %d seconds.", MIN_CIRCUIT_BUILD_TIMEOUT);
+    options->CircuitBuildTimeout = MIN_CIRCUIT_BUILD_TIMEOUT;
+  }
+
+  if (options->MaxCircuitDirtiness < MIN_MAX_CIRCUIT_DIRTINESS) {
+    log(LOG_WARN, LD_CONFIG, "MaxCircuitDirtiness option is too short; "
+      "raising to %d seconds.", MIN_MAX_CIRCUIT_DIRTINESS);
+    options->MaxCircuitDirtiness = MIN_MAX_CIRCUIT_DIRTINESS;
+  }
+
   if (options->KeepalivePeriod < 1)
     REJECT("KeepalivePeriod option must be positive.");
 



More information about the tor-commits mailing list