]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
r16464@catbus: nickm | 2007-11-06 14:53:28 -0500
authorNick Mathewson <nickm@torproject.org>
Tue, 6 Nov 2007 19:54:32 +0000 (19:54 +0000)
committerNick Mathewson <nickm@torproject.org>
Tue, 6 Nov 2007 19:54:32 +0000 (19:54 +0000)
 Also avoid overflow on or_conn->read_bucket

svn:r12401

src/or/connection.c

index 40aa72d56cb1e6a16f21c4e4560c4d3da5fbcabc..382802e3f3ec28d036b566f65a7ee1b5916099ac 100644 (file)
@@ -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);
       }