]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Pathbias should continue to ignore previously ignored circs.
authorMike Perry <mikeperry-git@torproject.org>
Wed, 8 May 2019 21:21:03 +0000 (21:21 +0000)
committerGeorge Kadianakis <desnacked@riseup.net>
Wed, 15 May 2019 13:44:59 +0000 (16:44 +0300)
If circuit padding wants to keep a circuit open and pathbias used to ignore
it, pathbias should continue to ignore it.

This may catch other purpose-change related miscounts (such as timeout
measurement, cannibalization, onion service circuit transitions, and
vanguards).

src/feature/client/circpathbias.c

index e6af649ba7c6ef3b63e4416c88671a4723fecda9..2be9984a64186c82b541ef8c644dc5aaf895e2dd 100644 (file)
@@ -400,12 +400,13 @@ pathbias_should_count(origin_circuit_t *circ)
   /* Check to see if the shouldcount result has changed due to a
    * unexpected purpose change that would affect our results */
   if (circ->pathbias_shouldcount == PATHBIAS_SHOULDCOUNT_IGNORED) {
-      log_info(LD_BUG,
-              "Circuit %d is now being counted despite being ignored "
-              "in the past. Purpose is %s, path state is %s",
-              circ->global_identifier,
-              circuit_purpose_to_string(circ->base_.purpose),
-              pathbias_state_to_string(circ->path_state));
+    log_info(LD_CIRC,
+            "Circuit %d is not being counted by pathbias because it was "
+            "ignored in the past. Purpose is %s, path state is %s",
+            circ->global_identifier,
+            circuit_purpose_to_string(circ->base_.purpose),
+            pathbias_state_to_string(circ->path_state));
+    return 0;
   }
   circ->pathbias_shouldcount = PATHBIAS_SHOULDCOUNT_COUNTED;