aboutsummaryrefslogtreecommitdiff
path: root/src/or
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2003-10-13 19:58:21 +0000
committerRoger Dingledine <arma@torproject.org>2003-10-13 19:58:21 +0000
commit737760f071db14dd85deca072ad87d4256058439 (patch)
tree692cc45fd1cf54c5d786f0f90808ddce4406a98f /src/or
parent411a18e34c3503aea18ba9675fc20b850c35fea5 (diff)
downloadtor-737760f071db14dd85deca072ad87d4256058439.tar
tor-737760f071db14dd85deca072ad87d4256058439.tar.gz
fix segfault (connecting to dirserver when network is down)
svn:r580
Diffstat (limited to 'src/or')
-rw-r--r--src/or/connection_edge.c2
-rw-r--r--src/or/directory.c1
2 files changed, 2 insertions, 1 deletions
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index b02e156cc..4d01736c3 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -577,7 +577,7 @@ static int connection_ap_handshake_socks_reply(connection_t *conn, char *reply,
return 0;
/* else fall through */
case -1: /* resolve failed */
- log_fn(LOG_WARN,"Couldn't queue resolve request.");
+ log_fn(LOG_WARN,"Resolve or connect failed (%s).", conn->address);
connection_remove(n_stream);
connection_free(n_stream);
case 0: /* resolve added to pending list */
diff --git a/src/or/directory.c b/src/or/directory.c
index 9581f7cae..fb92bf75a 100644
--- a/src/or/directory.c
+++ b/src/or/directory.c
@@ -63,6 +63,7 @@ void directory_initiate_command(routerinfo_t *router, int command) {
switch(connection_connect(conn, router->address, router->addr, router->dir_port)) {
case -1:
router_mark_as_down(conn->nickname); /* don't try him again */
+ connection_remove(conn);
connection_free(conn);
return;
case 0: