[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [tor/master] Correctly close intro circuit when deleting ephemeral HS



commit ab35f9de46798845e83823115c6a266af2248eae
Author: David Goulet <dgoulet@xxxxxxxxxxxxxx>
Date:   Thu Jun 16 12:58:30 2016 -0400

    Correctly close intro circuit when deleting ephemeral HS
    
    When deleting an ephemeral HS, we were only iterating on circuit with an
    OPEN state. However, it could be possible that an intro point circuit didn't
    reached the open state yet.
    
    This commit makes it that we close the circuit regardless of its state
    except if it was already marked for close.
    
    Fixes #18604
    
    Signed-off-by: David Goulet <dgoulet@xxxxxxxxxxxxxx>
---
 changes/bug18604     | 4 ++++
 src/or/rendservice.c | 1 -
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/changes/bug18604 b/changes/bug18604
new file mode 100644
index 0000000..114c67e
--- /dev/null
+++ b/changes/bug18604
@@ -0,0 +1,4 @@
+  o Minor bugfixes (ephemeral hidden service)
+    - When deleting an ephemeral hidden service, close its intro points even
+      if not in the open state. Resolves ticket #18604; bugfix on
+      tor-0.2.7.1-alpha.
diff --git a/src/or/rendservice.c b/src/or/rendservice.c
index 7426d8b..ff23050 100644
--- a/src/or/rendservice.c
+++ b/src/or/rendservice.c
@@ -926,7 +926,6 @@ rend_service_del_ephemeral(const char *service_id)
    */
   SMARTLIST_FOREACH_BEGIN(circuit_get_global_list(), circuit_t *, circ) {
     if (!circ->marked_for_close &&
-        circ->state == CIRCUIT_STATE_OPEN &&
         (circ->purpose == CIRCUIT_PURPOSE_S_ESTABLISH_INTRO ||
          circ->purpose == CIRCUIT_PURPOSE_S_INTRO)) {
       origin_circuit_t *oc = TO_ORIGIN_CIRCUIT(circ);



_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits