aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2004-04-08 03:53:39 +0000
committerNick Mathewson <nickm@torproject.org>2004-04-08 03:53:39 +0000
commit2a01e3ad10f407d2c46950f3386af41d8376cefe (patch)
treeb7008c4716013dabad64cecab185d1a37ca8f247 /src
parent299df7117c54f114ebc4775b9ad18ea09a39c4b5 (diff)
downloadtor-2a01e3ad10f407d2c46950f3386af41d8376cefe.tar
tor-2a01e3ad10f407d2c46950f3386af41d8376cefe.tar.gz
Launch intro services after launching connections; allow ORs to build circuits through as-yet-unconnectd ORs
svn:r1562
Diffstat (limited to 'src')
-rw-r--r--src/or/circuit.c5
-rw-r--r--src/or/directory.c6
2 files changed, 3 insertions, 8 deletions
diff --git a/src/or/circuit.c b/src/or/circuit.c
index 7da6fe22a..0c2dfad27 100644
--- a/src/or/circuit.c
+++ b/src/or/circuit.c
@@ -1268,11 +1268,6 @@ static circuit_t *circuit_establish_circuit(uint8_t purpose,
if(!n_conn || n_conn->state != OR_CONN_STATE_OPEN) { /* not currently connected */
circ->n_addr = firsthop->addr;
circ->n_port = firsthop->or_port;
- if(options.ORPort) { /* we would be connected if he were up. and he's not. */
- log_fn(LOG_INFO,"Route's firsthop isn't connected.");
- circuit_mark_for_close(circ);
- return NULL;
- }
if(!n_conn) { /* launch the connection */
n_conn = connection_or_connect(firsthop);
diff --git a/src/or/directory.c b/src/or/directory.c
index c9c8bd6e4..8bf945ab1 100644
--- a/src/or/directory.c
+++ b/src/or/directory.c
@@ -243,13 +243,13 @@ int connection_dir_process_inbuf(connection_t *conn) {
} else {
log_fn(LOG_INFO,"updated routers.");
}
+ if(options.ORPort) { /* connect to them all */
+ router_retry_connections();
+ }
if (has_fetched_directory==0) {
has_fetched_directory=1;
directory_has_arrived(); /* do things we've been waiting to do */
}
- if(options.ORPort) { /* connect to them all */
- router_retry_connections();
- }
}
if(conn->purpose == DIR_PURPOSE_UPLOAD_DIR) {