aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2002-10-02 04:07:33 +0000
committerRoger Dingledine <arma@torproject.org>2002-10-02 04:07:33 +0000
commite3fd91755da1a2873b99b62a360fd27254a05b11 (patch)
treee729ef3ce9a2173f449932b54d6a9ad83b9c48e8 /src
parentb289e15f076d8fb0f16003c3308a1792a0de0a6b (diff)
downloadtor-e3fd91755da1a2873b99b62a360fd27254a05b11.tar
tor-e3fd91755da1a2873b99b62a360fd27254a05b11.tar.gz
preemptive bugfix
svn:r129
Diffstat (limited to 'src')
-rw-r--r--src/or/main.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/or/main.c b/src/or/main.c
index ff89dd757..971a34b8b 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -226,8 +226,8 @@ void check_conn_read(int i) {
retval = connection_dir_handle_listener_read(conn);
} else {
retval = connection_read_to_buf(conn);
- if (retval < 0 && conn->type == CONN_TYPE_DIR) {
- /* as a special case: forget about this router */
+ if (retval < 0 && conn->type == CONN_TYPE_DIR && conn->state == DIR_CONN_STATE_CONNECTING) {
+ /* it's a directory server and connecting failed: forget about this router */
router_forget_router(conn->addr,conn->port);
}
if (retval >= 0) { /* all still well */