summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2011-05-17 20:51:47 -0400
committerRoger Dingledine <arma@torproject.org>2011-05-17 21:13:59 -0400
commit073fed06c458fac428b2377b4828412acb7d3802 (patch)
tree1995bf6bb1726ea2a79bc184ada2e02776f058d0 /src
parent07c5026efa4c5fac64e5f3e843eae6bea0de54db (diff)
downloadtor-073fed06c458fac428b2377b4828412acb7d3802.tar.gz
tor-073fed06c458fac428b2377b4828412acb7d3802.zip
discard circuits when we change our bridge configuration
otherwise we might reuse circuits from the previous configuration, which could be bad depending on the user's situation
Diffstat (limited to 'src')
-rw-r--r--src/or/config.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/or/config.c b/src/or/config.c
index 36a8940cab..8b59d509ec 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -1275,6 +1275,9 @@ options_act(or_options_t *old_options)
int revise_trackexithosts = 0;
int revise_automap_entries = 0;
if ((options->UseEntryGuards && !old_options->UseEntryGuards) ||
+ options->UseBridges != old_options->UseBridges ||
+ (options->UseBridges &&
+ !config_lines_eq(options->Bridges, old_options->Bridges)) ||
!routerset_equal(old_options->ExcludeNodes,options->ExcludeNodes) ||
!routerset_equal(old_options->ExcludeExitNodes,
options->ExcludeExitNodes) ||
@@ -1282,8 +1285,9 @@ options_act(or_options_t *old_options)
!routerset_equal(old_options->ExitNodes, options->ExitNodes) ||
options->StrictNodes != old_options->StrictNodes) {
log_info(LD_CIRC,
- "Changed to using entry guards, or changed preferred or "
- "excluded node lists. Abandoning previous circuits.");
+ "Changed to using entry guards or bridges, or changed "
+ "preferred or excluded node lists. "
+ "Abandoning previous circuits.");
circuit_mark_all_unused_circs();
circuit_expire_all_dirty_circs();
revise_trackexithosts = 1;