[tor-commits] [tor/master] Fix: call circuit_has_opened() for rendezvous circuit

nickm at torproject.org nickm at torproject.org
Fri Dec 19 14:38:53 UTC 2014


commit 3d83907ab168dd4b8cfc0919dbbbd188f02dca6b
Author: David Goulet <dgoulet at ev0ke.net>
Date:   Wed Dec 10 13:05:41 2014 -0500

    Fix: call circuit_has_opened() for rendezvous circuit
    
    In circuit_get_open_circ_or_launch(), for a rendezvous circuit,
    rend_client_rendcirc_has_opened() but circuit_has_opened() is preferred here
    since it will call the right function for a specific circuit purpose.
    
    Furthermore, a controller event is triggered where the former did not.
    
    Signed-off-by: David Goulet <dgoulet at ev0ke.net>
---
 changes/bug13936    |    6 ++++++
 src/or/circuituse.c |    2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/changes/bug13936 b/changes/bug13936
new file mode 100644
index 0000000..75dc9cd
--- /dev/null
+++ b/changes/bug13936
@@ -0,0 +1,6 @@
+  o Minor bugfixes:
+    - Use circuit_has_opened() instead of rend_client_rendcirc_has_opened()
+      when a rendezvous circuit is opened because circuit_has_opened() jobs
+      is to call a specialized function depending on the circuit purpose.
+      Furthermore, a controller event will be triggered here where the
+      former did not.
diff --git a/src/or/circuituse.c b/src/or/circuituse.c
index 714754a..071aac9 100644
--- a/src/or/circuituse.c
+++ b/src/or/circuituse.c
@@ -2016,7 +2016,7 @@ circuit_get_open_circ_or_launch(entry_connection_t *conn,
         circ->rend_data = rend_data_dup(ENTRY_TO_EDGE_CONN(conn)->rend_data);
         if (circ->base_.purpose == CIRCUIT_PURPOSE_C_ESTABLISH_REND &&
             circ->base_.state == CIRCUIT_STATE_OPEN)
-          rend_client_rendcirc_has_opened(circ);
+          circuit_has_opened(circ);
       }
     }
   } /* endif (!circ) */





More information about the tor-commits mailing list