From 9ba16c4d03a39bcd369ccd59f6bfa351f4b527d5 Mon Sep 17 00:00:00 2001 From: David Goulet Date: Fri, 12 Oct 2018 09:22:30 -0400 Subject: hs-v3: Close client intro circuits if the descriptor is replaced When storing a descriptor in the client cache, if we are about to replace an existing descriptor, make sure to close every introduction circuits of the old descriptor so we don't have leftovers lying around. Ticket 27471 describes a situation where tor is sending an INTRODUCE1 cell on an introduction circuit for which it doesn't have a matching intro point object (taken from the descriptor). The main theory is that, after a new descriptor showed up, the introduction points changed which led to selecting an introduction circuit not used by the service anymore thus for which we are unable to find the corresponding introduction point within the descriptor we just fetched. Closes #27471. Signed-off-by: David Goulet --- changes/ticket27471 | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 changes/ticket27471 (limited to 'changes') diff --git a/changes/ticket27471 b/changes/ticket27471 new file mode 100644 index 0000000000..ffe77d268e --- /dev/null +++ b/changes/ticket27471 @@ -0,0 +1,5 @@ + o Minor bugfixes (hidden service v3, client): + - When replacing a descriptor in the client cache with a newer descriptor, + make sure to close all client introduction circuits of the old + descriptor so we don't end up with unusable leftover circuits. Fixes bug + 27471; bugfix on 0.3.2.1-alpha. -- cgit v1.2.3-54-g00ecf