aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrea Shepard <andrea@persephoneslair.org>2012-08-30 15:27:55 -0700
committerAndrea Shepard <andrea@torproject.org>2012-10-08 03:06:09 -0700
commit6cce6241dd4405f6cf21057f9913e07633cf18bb (patch)
tree60db89b3c134b0109e2aa054da4736b8dc65dfba
parent35924435d22c2469ecbe06156c8069a928859d63 (diff)
downloadtor-6cce6241dd4405f6cf21057f9913e07633cf18bb.tar
tor-6cce6241dd4405f6cf21057f9913e07633cf18bb.tar.gz
Query circuit count from associated channel of or_conn in control.c
-rw-r--r--src/or/control.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/or/control.c b/src/or/control.c
index 74c6acc00..5c05fe159 100644
--- a/src/or/control.c
+++ b/src/or/control.c
@@ -12,6 +12,8 @@
#include "or.h"
#include "buffers.h"
+#include "channel.h"
+#include "channeltls.h"
#include "circuitbuild.h"
#include "circuitlist.h"
#include "circuituse.h"
@@ -3822,7 +3824,11 @@ control_event_or_conn_status(or_connection_t *conn, or_conn_status_event_t tp,
log_warn(LD_BUG, "Unrecognized status code %d", (int)tp);
return 0;
}
- ncircs = circuit_count_pending_on_or_conn(conn);
+ if (conn->chan) {
+ ncircs = circuit_count_pending_on_channel(TLS_CHAN_TO_BASE(conn->chan));
+ } else {
+ ncircs = 0;
+ }
ncircs += conn->n_circuits;
if (ncircs && (tp == OR_CONN_EVENT_FAILED || tp == OR_CONN_EVENT_CLOSED)) {
tor_snprintf(ncircs_buf, sizeof(ncircs_buf), "%sNCIRCS=%d",