From: Roger Dingledine Date: Sat, 22 Jul 2006 05:29:31 +0000 (+0000) Subject: more bulletproof reachability testing X-Git-Tag: tor-0.1.1.23~60 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=444f096d2d624378514b712c78e060ab523e6cea;p=thirdparty%2Ftor.git more bulletproof reachability testing svn:r6804 --- diff --git a/src/or/config.c b/src/or/config.c index fcca7acf91..e0dd745a98 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -796,7 +796,8 @@ options_act(or_options_t *old_options) return -1; } server_has_changed_ip(); - if (has_completed_circuit) + if (has_completed_circuit || + rep_hist_circbuilding_dormant(time(NULL))) inform_testing_reachability(); } cpuworkers_rotate(); diff --git a/src/or/main.c b/src/or/main.c index 6623c10f79..ca3742a5c9 100644 --- a/src/or/main.c +++ b/src/or/main.c @@ -568,8 +568,8 @@ directory_info_has_arrived(time_t now, int from_cache) return; } - if (server_mode(options) && !we_are_hibernating() && - !from_cache && has_completed_circuit) + if (server_mode(options) && !we_are_hibernating() && !from_cache && + (has_completed_circuit || rep_hist_circbuilding_dormant(now))) consider_testing_reachability(); } @@ -833,7 +833,7 @@ run_scheduled_events(time_t now) /* also, check religiously for reachability, if it's within the first * 20 minutes of our uptime. */ if (server_mode(options) && - has_completed_circuit && + (has_completed_circuit || rep_hist_circbuilding_dormant(now)) && stats_n_seconds_working < TIMEOUT_UNTIL_UNREACHABILITY_COMPLAINT && !we_are_hibernating()) consider_testing_reachability();