summaryrefslogtreecommitdiff
path: root/src/feature/hs/hs_service.c
diff options
context:
space:
mode:
authorDavid Goulet <dgoulet@torproject.org>2022-10-19 15:27:22 -0400
committerDavid Goulet <dgoulet@torproject.org>2022-10-19 16:39:10 -0400
commit04cccd70744a09492b70baf974b2953d6e5c6d0a (patch)
tree64e61e303c847d50db6bb4e83ac5da7a08e03d02 /src/feature/hs/hs_service.c
parent921268d4ce3e55c87e1df91a17b96d8d1407fbb7 (diff)
downloadtor-04cccd70744a09492b70baf974b2953d6e5c6d0a.tar.gz
tor-04cccd70744a09492b70baf974b2953d6e5c6d0a.zip
hs: Retry service rendezvous on circuit close
Move the retry from circuit_expire_building() to when the offending circuit is being closed. Fixes #40695 Signed-off-by: David Goulet <dgoulet@torproject.org>
Diffstat (limited to 'src/feature/hs/hs_service.c')
-rw-r--r--src/feature/hs/hs_service.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/feature/hs/hs_service.c b/src/feature/hs/hs_service.c
index 716386408a..4e971233af 100644
--- a/src/feature/hs/hs_service.c
+++ b/src/feature/hs/hs_service.c
@@ -3675,6 +3675,9 @@ hs_service_circuit_cleanup_on_close(const circuit_t *circ)
hs_metrics_close_established_rdv(
&CONST_TO_ORIGIN_CIRCUIT(circ)->hs_ident->identity_pk);
break;
+ case CIRCUIT_PURPOSE_S_CONNECT_REND:
+ hs_circ_retry_service_rendezvous_point(CONST_TO_ORIGIN_CIRCUIT(circ));
+ break;
default:
break;
}