Browse Source

Use u32 add helper for CIRC_BW accounting.

There are quite a few other places this could be used, but keeping it simple
for now.
Mike Perry 6 years ago
parent
commit
f921fd771a
2 changed files with 4 additions and 10 deletions
  1. 2 5
      src/or/command.c
  2. 2 5
      src/or/relay.c

+ 2 - 5
src/or/command.c

@@ -504,11 +504,8 @@ command_process_relay_cell(cell_t *cell, channel_t *chan)
     origin_circuit_t *ocirc = TO_ORIGIN_CIRCUIT(circ);
 
     /* Count the payload bytes only. We don't care about cell headers */
-    if (PREDICT_LIKELY(UINT32_MAX - ocirc->n_read_circ_bw >
-                CELL_PAYLOAD_SIZE))
-      ocirc->n_read_circ_bw += (int)CELL_PAYLOAD_SIZE;
-    else
-      ocirc->n_read_circ_bw = UINT32_MAX;
+    ocirc->n_read_circ_bw = tor_add_u32_nowrap(ocirc->n_read_circ_bw,
+                                               CELL_PAYLOAD_SIZE);
   }
 
   if (!CIRCUIT_IS_ORIGIN(circ) &&

+ 2 - 5
src/or/relay.c

@@ -374,11 +374,8 @@ circuit_package_relay_cell(cell_t *cell, circuit_t *circ,
 
     /* Update circ written totals for control port */
     origin_circuit_t *ocirc = TO_ORIGIN_CIRCUIT(circ);
-    if (PREDICT_LIKELY(UINT32_MAX - ocirc->n_written_circ_bw
-          > CELL_PAYLOAD_SIZE))
-      ocirc->n_written_circ_bw += (int)CELL_PAYLOAD_SIZE;
-    else
-      ocirc->n_written_circ_bw = UINT32_MAX;
+    ocirc->n_written_circ_bw = tor_add_u32_nowrap(ocirc->n_written_circ_bw,
+                                                  CELL_PAYLOAD_SIZE);
 
   } else { /* incoming cell */
     if (CIRCUIT_IS_ORIGIN(circ)) {