[tor-commits] [tor/maint-0.4.0] Remove overly strict assertions in transports.c.

teor at torproject.org teor at torproject.org
Mon Nov 25 02:38:42 UTC 2019


commit 389b37246eb6310401bfc3bcb80ee2fb8dcac56b
Author: Alexander Færøy <ahf at torproject.org>
Date:   Tue Sep 24 16:42:00 2019 +0200

    Remove overly strict assertions in transports.c.
    
    This patch removes an overly strict tor_assert() and an ignorable BUG()
    expression. Both of these would trigger if a PT was unable to configure
    itself during startup. The easy way to trigger this is to configure an
    obfs4 bridge where you make the obfs4 process try to bind on a port
    number under 1024.
    
    See: https://bugs.torproject.org/31091
---
 changes/ticket31091             | 3 +++
 src/feature/client/transports.c | 6 ++----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/changes/ticket31091 b/changes/ticket31091
new file mode 100644
index 000000000..3cb9a2c37
--- /dev/null
+++ b/changes/ticket31091
@@ -0,0 +1,3 @@
+  o Minor bugfixes (pluggable transports):
+    - Remove overly strict assertions that triggers when a pluggable transport
+      is spawned in an unsuccessful manner. Fixes bug 31091; bugfix on 0.4.0.1-alpha.
diff --git a/src/feature/client/transports.c b/src/feature/client/transports.c
index e7ff3bf34..f34d4af48 100644
--- a/src/feature/client/transports.c
+++ b/src/feature/client/transports.c
@@ -1826,15 +1826,13 @@ managed_proxy_stdout_callback(process_t *process,
 
   managed_proxy_t *mp = process_get_data(process);
 
-  if (BUG(mp == NULL))
+  if (mp == NULL)
     return;
 
   handle_proxy_line(line, mp);
 
-  if (proxy_configuration_finished(mp)) {
+  if (proxy_configuration_finished(mp))
     handle_finished_proxy(mp);
-    tor_assert(mp->conf_state == PT_PROTO_COMPLETED);
-  }
 }
 
 /** Callback function that is called when our PT process have data on its





More information about the tor-commits mailing list