[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [tor/master] Stop using approx_time() in circuitmux_ewma.



commit 60fad8d41fc7395bd573a2cd9585ae9cb03febc3
Author: Nick Mathewson <nickm@xxxxxxxxxxxxxx>
Date:   Tue May 1 18:28:01 2018 -0400

    Stop using approx_time() in circuitmux_ewma.
    
    It doesn't match with the tick-count code any longer.
    
    Bug not in any released Tor.
---
 src/or/circuitmux_ewma.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/or/circuitmux_ewma.c b/src/or/circuitmux_ewma.c
index a360327f8..e85301b26 100644
--- a/src/or/circuitmux_ewma.c
+++ b/src/or/circuitmux_ewma.c
@@ -250,7 +250,11 @@ static unsigned current_tick_num;
 static inline unsigned int
 cell_ewma_get_tick(void)
 {
-  return ((unsigned)approx_time() / EWMA_TICK_LEN);
+  monotime_coarse_t now;
+  monotime_coarse_get(&now);
+  int32_t msec_diff = monotime_coarse_diff_msec32(&start_of_current_tick,
+                                                  &now);
+  return current_tick_num + msec_diff / (1000*EWMA_TICK_LEN);
 }
 
 /**

_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits