[or-cvs] [tor/master] Stop using lround in or.h, and check for bad values of RECENT_CIRCUITS

Nick Mathewson nickm at seul.org
Tue Dec 15 22:10:43 UTC 2009


Author: Nick Mathewson <nickm at torproject.org>
Date: Tue, 15 Dec 2009 15:46:25 -0500
Subject: Stop using lround in or.h, and check for bad values of RECENT_CIRCUITS
Commit: 3b896195cb1cd3bded9eb503b33c10bf0eeeaf68

---
 src/or/or.h |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/or/or.h b/src/or/or.h
index a51fdd3..40bf74e 100644
--- a/src/or/or.h
+++ b/src/or/or.h
@@ -3002,7 +3002,7 @@ typedef uint32_t build_time_t;
  * at which point we switch back to computing the timeout from
  * our saved history.
  */
-#define NETWORK_NONLIVE_TIMEOUT_COUNT (tor_lround(RECENT_CIRCUITS*0.15))
+#define NETWORK_NONLIVE_TIMEOUT_COUNT (RECENT_CIRCUITS*3/20)
 
 /**
  * This tells us when to toss out the last streak of N timeouts.
@@ -3010,8 +3010,7 @@ typedef uint32_t build_time_t;
  * If instead we start getting cells, we switch back to computing the timeout
  * from our saved history.
  */
-#define NETWORK_NONLIVE_DISCARD_COUNT \
-  (tor_lround(NETWORK_NONLIVE_TIMEOUT_COUNT*2))
+#define NETWORK_NONLIVE_DISCARD_COUNT (NETWORK_NONLIVE_TIMEOUT_COUNT*2)
 
 /**
  * Maximum count of timeouts that finish the first hop in the past
@@ -3020,7 +3019,12 @@ typedef uint32_t build_time_t;
  * This tells us to abandon timeout history and set
  * the timeout back to BUILD_TIMEOUT_INITIAL_VALUE.
  */
-#define MAX_RECENT_TIMEOUT_COUNT (tor_lround(RECENT_CIRCUITS*0.8))
+#define MAX_RECENT_TIMEOUT_COUNT (RECENT_CIRCUITS*4/5)
+
+#if MAX_RECENT_TIMEOUT_COUNT < 1 || NETWORK_NONLIVE_DISCARD_COUNT < 1 || \
+  NETWORK_NONLIVE_TIMEOUT_COUNT < 1
+#error "RECENT_CIRCUITS is set too low."
+#endif
 
 /** Information about the state of our local network connection */
 typedef struct {
-- 
1.5.6.5



More information about the tor-commits mailing list