[tor-commits] [tor/master] Don't halt bootstrap to figure out if we should restart PT proxies.

nickm at torproject.org nickm at torproject.org
Wed Apr 23 15:07:13 UTC 2014


commit bf7cb6acf66abf3a9aa4be6819e6cf160579dab0
Author: George Kadianakis <desnacked at riseup.net>
Date:   Tue Apr 8 16:59:46 2014 +0100

    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.
---
 changes/bug11156    |    5 +++++
 src/or/config.c     |    6 ++++++
 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 0000000..bb20ed1e
--- /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 dbf643c..551b09f 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 7e496fe..e1876d6 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)
 {





More information about the tor-commits mailing list