summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2006-07-30 04:54:13 +0000
committerRoger Dingledine <arma@torproject.org>2006-07-30 04:54:13 +0000
commit798b5806952086730815f56fd769af6ccf74482e (patch)
tree1d46ddde0f4e75200715d8e5db3f5b8bdc3ec7c2
parentbf76d3a1897f56c24a99cefbeb72360dccc673bf (diff)
downloadtor-798b5806952086730815f56fd769af6ccf74482e.tar.gz
tor-798b5806952086730815f56fd769af6ccf74482e.zip
fix assert found by DreadWingKnight: now that rendezvous streams
are attached to p_streams, the p_streams list can consist of both AP and EXIT conns. svn:r6945
-rw-r--r--src/or/circuitlist.c2
-rw-r--r--src/or/or.h3
2 files changed, 4 insertions, 1 deletions
diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c
index 47607931bc..7a8830afe6 100644
--- a/src/or/circuitlist.c
+++ b/src/or/circuitlist.c
@@ -1013,9 +1013,11 @@ assert_circuit_ok(const circuit_t *c)
tor_assert(c == circuit_get_by_circid_orconn(or_circ->p_circ_id,
or_circ->p_conn));
}
+#if 0 /* false now that rendezvous exits are attached to p_streams */
if (origin_circ)
for (conn = origin_circ->p_streams; conn; conn = conn->next_stream)
tor_assert(conn->_base.type == CONN_TYPE_AP);
+#endif
if (or_circ)
for (conn = or_circ->n_streams; conn; conn = conn->next_stream)
tor_assert(conn->_base.type == CONN_TYPE_EXIT);
diff --git a/src/or/or.h b/src/or/or.h
index 02290eb59c..7e3f96eaf8 100644
--- a/src/or/or.h
+++ b/src/or/or.h
@@ -1198,7 +1198,8 @@ typedef struct circuit_t {
typedef struct origin_circuit_t {
circuit_t _base;
- /** Linked list of AP streams associated with this circuit. */
+ /** Linked list of AP streams (or EXIT streams if hidden service)
+ * associated with this circuit. */
edge_connection_t *p_streams;
/** Build state for this circuit. It includes the intended path
* length, the chosen exit router, rendezvous information, etc.