mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-27 22:03:31 +01:00
r11461@Kushana: nickm | 2006-12-07 13:16:45 -0500
Change logging format of state file to only include non-default values. Adjust clients to never store bandwidth history in the state file. (Possible backport candidate.) svn:r9043
This commit is contained in:
parent
613af4bc98
commit
63e4cfbeb6
@ -12,6 +12,9 @@ Changes in version 0.1.2.5-xxxx - 200?-??-??
|
|||||||
o Security bugfixes:
|
o Security bugfixes:
|
||||||
- Do not log introduction points for hidden services if SafeLogging
|
- Do not log introduction points for hidden services if SafeLogging
|
||||||
is set.
|
is set.
|
||||||
|
- Clients do not store bandwidth history in their state files. (This
|
||||||
|
shouldn't be an exploitable security issue, but it's better to be
|
||||||
|
safe.)
|
||||||
|
|
||||||
o Controller bugfixes:
|
o Controller bugfixes:
|
||||||
- Report the circuit number correctly in STREAM CLOSED events. (Bug
|
- Report the circuit number correctly in STREAM CLOSED events. (Bug
|
||||||
|
@ -274,11 +274,11 @@ static config_var_t _state_vars[] = {
|
|||||||
VAR("EntryGuards", LINELIST_V, EntryGuards, NULL),
|
VAR("EntryGuards", LINELIST_V, EntryGuards, NULL),
|
||||||
|
|
||||||
VAR("BWHistoryReadEnds", ISOTIME, BWHistoryReadEnds, NULL),
|
VAR("BWHistoryReadEnds", ISOTIME, BWHistoryReadEnds, NULL),
|
||||||
VAR("BWHistoryReadInterval", UINT, BWHistoryReadInterval, NULL),
|
VAR("BWHistoryReadInterval", UINT, BWHistoryReadInterval, "900"),
|
||||||
VAR("BWHistoryReadValues", CSV, BWHistoryReadValues, NULL),
|
VAR("BWHistoryReadValues", CSV, BWHistoryReadValues, ""),
|
||||||
VAR("BWHistoryWriteEnds", ISOTIME, BWHistoryWriteEnds, NULL),
|
VAR("BWHistoryWriteEnds", ISOTIME, BWHistoryWriteEnds, NULL),
|
||||||
VAR("BWHistoryWriteInterval", UINT, BWHistoryWriteInterval, NULL),
|
VAR("BWHistoryWriteInterval", UINT, BWHistoryWriteInterval, "900"),
|
||||||
VAR("BWHistoryWriteValues", CSV, BWHistoryWriteValues, NULL),
|
VAR("BWHistoryWriteValues", CSV, BWHistoryWriteValues, ""),
|
||||||
|
|
||||||
VAR("TorVersion", STRING, TorVersion, NULL),
|
VAR("TorVersion", STRING, TorVersion, NULL),
|
||||||
|
|
||||||
@ -3968,7 +3968,7 @@ or_state_save(void)
|
|||||||
global_state->LastWritten = time(NULL);
|
global_state->LastWritten = time(NULL);
|
||||||
tor_free(global_state->TorVersion);
|
tor_free(global_state->TorVersion);
|
||||||
global_state->TorVersion = tor_strdup("Tor " VERSION);
|
global_state->TorVersion = tor_strdup("Tor " VERSION);
|
||||||
state = config_dump(&state_format, global_state, 0);
|
state = config_dump(&state_format, global_state, 1);
|
||||||
len = strlen(state)+128;
|
len = strlen(state)+128;
|
||||||
contents = tor_malloc(len);
|
contents = tor_malloc(len);
|
||||||
format_local_iso_time(tbuf, time(NULL));
|
format_local_iso_time(tbuf, time(NULL));
|
||||||
|
@ -659,12 +659,20 @@ rep_hist_update_state(or_state_t *state)
|
|||||||
s_interval= r?&state->BWHistoryReadInterval:&state->BWHistoryWriteInterval;
|
s_interval= r?&state->BWHistoryReadInterval:&state->BWHistoryWriteInterval;
|
||||||
s_values = r?&state->BWHistoryReadValues :&state->BWHistoryWriteValues;
|
s_values = r?&state->BWHistoryReadValues :&state->BWHistoryWriteValues;
|
||||||
|
|
||||||
*s_begins = b->next_period;
|
|
||||||
*s_interval = NUM_SECS_BW_SUM_INTERVAL;
|
|
||||||
if (*s_values) {
|
if (*s_values) {
|
||||||
SMARTLIST_FOREACH(*s_values, char *, cp, tor_free(cp));
|
SMARTLIST_FOREACH(*s_values, char *, cp, tor_free(cp));
|
||||||
smartlist_free(*s_values);
|
smartlist_free(*s_values);
|
||||||
}
|
}
|
||||||
|
if (! server_mode(get_options())) {
|
||||||
|
/* Clients don't need to store bandwidth history persistently;
|
||||||
|
* force these values to the defaults. */
|
||||||
|
*s_begins = 0;
|
||||||
|
*s_interval = 900;
|
||||||
|
*s_values = smartlist_create();
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
*s_begins = b->next_period;
|
||||||
|
*s_interval = NUM_SECS_BW_SUM_INTERVAL;
|
||||||
cp = buf;
|
cp = buf;
|
||||||
cp += rep_hist_fill_bandwidth_history(cp, len, b);
|
cp += rep_hist_fill_bandwidth_history(cp, len, b);
|
||||||
tor_snprintf(cp, len-(cp-buf), cp == buf ? U64_FORMAT : ","U64_FORMAT,
|
tor_snprintf(cp, len-(cp-buf), cp == buf ? U64_FORMAT : ","U64_FORMAT,
|
||||||
|
Loading…
Reference in New Issue
Block a user