Browse Source

Merge remote-tracking branch 'tor-github/pr/546' into maint-0.3.5

Nick Mathewson 5 years ago
parent
commit
967efc0d28
2 changed files with 10 additions and 2 deletions
  1. 6 0
      changes/bug28619
  2. 4 2
      src/feature/hs/hs_service.c

+ 6 - 0
changes/bug28619

@@ -0,0 +1,6 @@
+  o Minor bugfixes (hidden service v3):
+    - When deleting an ephemeral onion service (DEL_ONION), do not close any
+      rendezvous circuits in order to let the existing client connections
+      finish by themselves or closed by the application. The HS v2 is doing
+      that already so now we have the same behavior for all versions. Fixes
+      bug 28619; bugfix on 0.3.3.1-alpha.

+ 4 - 2
src/feature/hs/hs_service.c

@@ -3627,8 +3627,10 @@ hs_service_del_ephemeral(const char *address)
     goto err;
   }
 
-  /* Close circuits, remove from map and finally free. */
-  close_service_circuits(service);
+  /* Close introduction circuits, remove from map and finally free. Notice
+   * that the rendezvous circuits aren't closed in order for any existing
+   * connections to finish. We let the application terminate them. */
+  close_service_intro_circuits(service);
   remove_service(hs_service_map, service);
   hs_service_free(service);