aboutsummaryrefslogtreecommitdiff
path: root/src/or/connection_edge.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2008-05-27 20:26:40 +0000
committerNick Mathewson <nickm@torproject.org>2008-05-27 20:26:40 +0000
commit9975c4f6f8c54b150335a5cd6bb7e0e7defbca80 (patch)
tree2df0b3381e1782369cd74eb225dd1eb7a2228167 /src/or/connection_edge.c
parent4f8bb87ac532ac50ccbdeab4a8c483fd41c754c6 (diff)
downloadtor-9975c4f6f8c54b150335a5cd6bb7e0e7defbca80.tar
tor-9975c4f6f8c54b150335a5cd6bb7e0e7defbca80.tar.gz
Fix part of bug 681: always reattach tunneled directory connections, regardless of the setting for LeaveStreamsUnattached
svn:r14750
Diffstat (limited to 'src/or/connection_edge.c')
-rw-r--r--src/or/connection_edge.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index e059850df..06d1dacd1 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -549,7 +549,9 @@ connection_ap_detach_retriable(edge_connection_t *conn, origin_circuit_t *circ,
{
control_event_stream_status(conn, STREAM_EVENT_FAILED_RETRIABLE, reason);
conn->_base.timestamp_lastread = time(NULL);
- if (! get_options()->LeaveStreamsUnattached) {
+ if (!get_options()->LeaveStreamsUnattached || conn->use_begindir) {
+ /* If we're attaching streams ourself, or if this connection is
+ * a tunneled directory connection, then just attach it. */
conn->_base.state = AP_CONN_STATE_CIRCUIT_WAIT;
circuit_detach_stream(TO_CIRCUIT(circ),conn);
return connection_ap_handshake_attach_circuit(conn);