Browse Source

r16464@catbus: nickm | 2007-11-06 14:53:28 -0500
Also avoid overflow on or_conn->read_bucket


svn:r12401

Nick Mathewson 16 years ago
parent
commit
47fd6f7267
1 changed files with 5 additions and 3 deletions
  1. 5 3
      src/or/connection.c

+ 5 - 3
src/or/connection.c

@@ -1699,9 +1699,11 @@ connection_bucket_refill(int seconds_elapsed, time_t now)
     if (connection_speaks_cells(conn)) {
       or_connection_t *or_conn = TO_OR_CONN(conn);
       if (connection_read_bucket_should_increase(or_conn)) {
-        or_conn->read_bucket += or_conn->bandwidthrate*seconds_elapsed;
-        if (or_conn->read_bucket > or_conn->bandwidthburst)
-          or_conn->read_bucket = or_conn->bandwidthburst;
+        connection_bucket_refill_helper(&or_conn->read_bucket,
+                                        or_conn->bandwidthrate,
+                                        or_conn->bandwidthburst,
+                                        seconds_elapsed,
+                                        "or_conn->read_bucket");
         //log_fn(LOG_DEBUG,"Receiver bucket %d now %d.", i,
         //       conn->read_bucket);
       }