[tor-commits] [tor/master] Bug 8024: Check for null/closed channel before probing.

andrea at torproject.org andrea at torproject.org
Tue Jan 29 00:18:37 UTC 2013


commit a78542f0c30a6d8a25b3a8c92fec61c04c3feeaf
Author: Mike Perry <mikeperry-git at fscked.org>
Date:   Tue Jan 22 21:03:28 2013 -0800

    Bug 8024: Check for null/closed channel before probing.
---
 changes/bug7802       |    1 +
 src/or/circuitbuild.c |   10 ++++++++++
 2 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/changes/bug7802 b/changes/bug7802
index 1d09757..9bc0f36 100644
--- a/changes/bug7802
+++ b/changes/bug7802
@@ -8,3 +8,4 @@
     - Remove a source of rounding error during path bias count scaling.
     - Don't count cannibalized circuits as used for path bias until we
       actually try to use them.
+    - Fix circuit_package_relay_cell warning message about n_chan==NULL.
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index 97a26dd..e3a9d59 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -1727,6 +1727,16 @@ pathbias_send_usable_probe(circuit_t *circ)
     return -1;
   }
 
+  /* Can't probe if the channel isn't open */
+  if (circ->n_chan == NULL ||
+      (circ->n_chan->state != CHANNEL_STATE_OPEN
+       && circ->n_chan->state != CHANNEL_STATE_MAINT)) {
+    log_info(LD_CIRC,
+             "Skipping pathbias probe for circuit %d: Channel is not open.",
+             ocirc->global_identifier);
+    return -1;
+  }
+
   circuit_change_purpose(circ, CIRCUIT_PURPOSE_PATH_BIAS_TESTING);
 
   /* Update timestamp for when circuit_expire_building() should kill us */





More information about the tor-commits mailing list