mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 13:13:44 +01:00
Merge remote-tracking branch 'public/bug9543' into maint-0.2.4
This commit is contained in:
commit
3727a978b8
4
changes/bug9543
Normal file
4
changes/bug9543
Normal file
@ -0,0 +1,4 @@
|
||||
o Minor bugfixes:
|
||||
- Avoid overflows when the user sets MaxCircuitDirtiness to a
|
||||
ridiculously high value, by imposing a (ridiculously high) 30-day
|
||||
maximum on MaxCircuitDirtiness.
|
@ -2266,6 +2266,10 @@ compute_publishserverdescriptor(or_options_t *options)
|
||||
* will generate too many circuits and potentially overload the network. */
|
||||
#define MIN_MAX_CIRCUIT_DIRTINESS 10
|
||||
|
||||
/** Highest allowable value for MaxCircuitDirtiness: prevents time_t
|
||||
* overflows. */
|
||||
#define MAX_MAX_CIRCUIT_DIRTINESS (30*24*60*60)
|
||||
|
||||
/** Lowest allowable value for CircuitStreamTimeout; if this is too low, Tor
|
||||
* will generate too many circuits and potentially overload the network. */
|
||||
#define MIN_CIRCUIT_STREAM_TIMEOUT 10
|
||||
@ -2786,6 +2790,12 @@ options_validate(or_options_t *old_options, or_options_t *options,
|
||||
options->MaxCircuitDirtiness = MIN_MAX_CIRCUIT_DIRTINESS;
|
||||
}
|
||||
|
||||
if (options->MaxCircuitDirtiness > MAX_MAX_CIRCUIT_DIRTINESS) {
|
||||
log_warn(LD_CONFIG, "MaxCircuitDirtiness option is too high; "
|
||||
"setting to %d days.", MAX_MAX_CIRCUIT_DIRTINESS/86400);
|
||||
options->MaxCircuitDirtiness = MAX_MAX_CIRCUIT_DIRTINESS;
|
||||
}
|
||||
|
||||
if (options->CircuitStreamTimeout &&
|
||||
options->CircuitStreamTimeout < MIN_CIRCUIT_STREAM_TIMEOUT) {
|
||||
log_warn(LD_CONFIG, "CircuitStreamTimeout option is too short; "
|
||||
|
Loading…
Reference in New Issue
Block a user