Don't log about stats when running as a client without geoip

Completely disable stats if we aren't running as a relay. We won't
collect any anyway, so setting up the infrastructure for them and
logging about them is wrong. This also removes a confusing log
message that clients without a geoip db would have seen.

Fixes bug 4353.
This commit is contained in:
Sebastian Hahn 2011-11-19 00:50:03 +01:00
parent 5a02406ae0
commit 6ef44b7849
2 changed files with 16 additions and 0 deletions

7
changes/bug4353 Normal file
View File

@ -0,0 +1,7 @@
o Minor bugfixes:
- When running as client without a geoip database, do not print a
misleading (and plain wrong) log message that we're collecting
dirreq statistics - we're not collecting statistics as clients.
Also don't create a useless (because empty) stats file in the
stats/ directory. Fixes bug 4353, bugfix on 0.2.2.34.

View File

@ -1414,6 +1414,15 @@ options_act(or_options_t *old_options)
options->EntryStatistics || options->ExitPortStatistics) {
time_t now = time(NULL);
int print_notice = 0;
/* If we aren't acting as a server, we can't collect stats anyway. */
if (!server_mode(options)) {
options->CellStatistics = 0;
options->DirReqStatistics = 0;
options->EntryStatistics = 0;
options->ExitPortStatistics = 0;
}
if ((!old_options || !old_options->CellStatistics) &&
options->CellStatistics) {
rep_hist_buffer_stats_init(now);