From 42d03890b497a9b88601aa08f972c0f02664bf84 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Mon, 29 Jan 2007 18:13:37 +0000 Subject: r11584@catbus: nickm | 2007-01-29 11:25:40 -0500 Fix/update some XXX012 points. svn:r9456 --- src/or/directory.c | 22 ++++++++++------------ src/or/dns.c | 3 ++- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/src/or/directory.c b/src/or/directory.c index 76ae45696..e5b136d28 100644 --- a/src/or/directory.c +++ b/src/or/directory.c @@ -279,8 +279,14 @@ directory_conn_is_self_reachability_test(dir_connection_t *conn) void connection_dir_request_failed(dir_connection_t *conn) { - if (router_digest_is_me(conn->identity_digest)) + if (directory_conn_is_self_reachability_test(conn)) { + routerinfo_t *me = router_get_my_routerinfo(); + if (me) + control_event_server_status(LOG_WARN, + "REACHABILITY_FAILED DIRADDRESS=%s:%d", + me->address, me->dir_port); return; /* this was a test fetch. don't retry. */ + } router_set_status(conn->identity_digest, 0); /* don't try him again */ if (conn->_base.purpose == DIR_PURPOSE_FETCH_DIR || conn->_base.purpose == DIR_PURPOSE_FETCH_RUNNING_LIST) { @@ -288,16 +294,6 @@ connection_dir_request_failed(dir_connection_t *conn) conn->_base.address, conn->_base.port); directory_get_from_dirserver(conn->_base.purpose, NULL, 0 /* don't retry_if_no_servers */); - - if (directory_conn_is_self_reachability_test(conn)) { - /* XXX012 look at the 'if' at the top of this function. this - * code will never be reached. -RD */ - routerinfo_t *me = router_get_my_routerinfo(); - if (me) - control_event_server_status(LOG_WARN, - "REACHABILITY_FAILED DIRADDRESS=%s:%d", - me->address, me->dir_port); - } } else if (conn->_base.purpose == DIR_PURPOSE_FETCH_NETWORKSTATUS) { log_info(LD_DIR, "Giving up on directory server at '%s'; retrying", conn->_base.address); @@ -2048,7 +2044,9 @@ dir_routerdesc_download_failed(smartlist_t *failed, int status_code) cp, (int)rs->n_download_failures); }); - /* XXX012 why did this get commented out too? */ + /* XXX012 why did this get commented out too? -RD */ + /* Because we already call update_router_descriptor_downloads() + * every 10 seconds (DESCRIPTOR_RETRY_INTERVAL) in main.c -NM */ /* update_router_descriptor_downloads(time(NULL)); */ } diff --git a/src/or/dns.c b/src/or/dns.c index 58099780b..1155f5999 100644 --- a/src/or/dns.c +++ b/src/or/dns.c @@ -1713,7 +1713,8 @@ launch_resolve(edge_connection_t *exitconn, or_circuit_t *circ) * resolve this? -RD */ /* XXX012 Are you sure I didn't fix that in version r9336 with * ServerDNSAllowNonRFC953Addreesses? If it's still not working, - * let me know which addresses are breaking. -NM */ + * let me know which addresses are breaking. If it _is_ working, + * please remove these comments. :) -NM */ if (exitconn->_base.purpose == EXIT_PURPOSE_RESOLVE) { if (evdns_err_is_transient(r)) send_resolved_cell(exitconn, circ, RESOLVED_TYPE_ERROR_TRANSIENT); -- cgit v1.2.3