diff options
author | George Kadianakis <desnacked@riseup.net> | 2014-04-08 16:59:46 +0100 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2014-04-23 11:05:45 -0400 |
commit | bf7cb6acf66abf3a9aa4be6819e6cf160579dab0 (patch) | |
tree | f85450e7a671ee0576d91abab3cb11c55aa86197 | |
parent | fffc59b0e941f12e1588e0604c8295ecc0679150 (diff) | |
download | tor-bf7cb6acf66abf3a9aa4be6819e6cf160579dab0.tar.gz tor-bf7cb6acf66abf3a9aa4be6819e6cf160579dab0.zip |
Don't halt bootstrap to figure out if we should restart PT proxies.
Instead, figure out if we should restart PT proxies _immediately_ after
we re-read the config file.
-rw-r--r-- | changes/bug11156 | 5 | ||||
-rw-r--r-- | src/or/config.c | 6 | ||||
-rw-r--r-- | src/or/transports.c | 3 |
3 files changed, 12 insertions, 2 deletions
diff --git a/changes/bug11156 b/changes/bug11156 new file mode 100644 index 0000000000..bb20ed1e70 --- /dev/null +++ b/changes/bug11156 @@ -0,0 +1,5 @@ + o Minor bugfixes (clients): + - Fix a bug where a client-side Tor with pluggable transports + would take 60 seconds to bootstrap if a config re-read was + triggered at just the right timing during bootstrap. Refixes bug + 11156; bugfix on 0.2.5.3-alpha.
\ No newline at end of file diff --git a/src/or/config.c b/src/or/config.c index dbf643c53a..551b09f582 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -1433,6 +1433,12 @@ options_act(const or_options_t *old_options) sweep_transport_list(); sweep_proxy_list(); + /* Start the PT proxy configuration. By doing this configuration + here, we also figure out which proxies need to be restarted and + which not. */ + if (pt_proxies_configuration_pending() && !net_is_disabled()) + pt_configure_remaining_proxies(); + /* Bail out at this point if we're not going to be a client or server: * we want to not fork, and to log stuff to stderr. */ if (!running_tor) diff --git a/src/or/transports.c b/src/or/transports.c index 7e496fe219..e1876d678c 100644 --- a/src/or/transports.c +++ b/src/or/transports.c @@ -534,8 +534,7 @@ launch_managed_proxy(managed_proxy_t *mp) } /** Check if any of the managed proxies we are currently trying to - * configure have anything new to say. This is called from - * run_scheduled_events(). */ + * configure has anything new to say. */ void pt_configure_remaining_proxies(void) { |