tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit fe3331b84554c6d6e2e633d77de02453b9a73f88
parent d47c9276de69ee206670844b4032965fbb497d3b
Author: Nick Mathewson <nickm@torproject.org>
Date:   Fri,  4 Jan 2019 14:57:06 -0500

Merge branch 'maint-0.3.3' into maint-0.3.4

Diffstat:
Achanges/bug28619 | 6++++++
Msrc/or/hs_service.c | 6++++--
2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/changes/bug28619 b/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. diff --git a/src/or/hs_service.c b/src/or/hs_service.c @@ -3140,8 +3140,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);