commit 1e553b6c68b5bffeda07dea5b5adcac9730013dd Author: David Goulet dgoulet@ev0ke.net Date: Tue Apr 19 14:23:12 2016 -0400
Increase number of preemptive internal circuits
When we connect to a hidden service as a client we may need three internal circuits, one for the descriptor retrieval, introduction, and rendezvous. Let's try to make sure we have them. Closes #13239.
Signed-off-by: David Goulet dgoulet@ev0ke.net --- changes/bug13239 | 4 ++++ src/or/circuituse.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/changes/bug13239 b/changes/bug13239 new file mode 100644 index 0000000..17030c9 --- /dev/null +++ b/changes/bug13239 @@ -0,0 +1,4 @@ + o Minor bugfixes (hidden service client): + - Increase the minimum number of internal circuits we preemptively build + from 2 to 3 so they are available when a client connects to another + onion service. Fixes bug 13239; bugfix on tor-0.1.0.1-rc~460. diff --git a/src/or/circuituse.c b/src/or/circuituse.c index 31003ea..b595994 100644 --- a/src/or/circuituse.c +++ b/src/or/circuituse.c @@ -1067,7 +1067,7 @@ circuit_predict_and_launch_new(void) if (rep_hist_get_predicted_internal(now, &hidserv_needs_uptime, &hidserv_needs_capacity) && ((num_uptime_internal<2 && hidserv_needs_uptime) || - num_internal<2) + num_internal<3) && router_have_consensus_path() != CONSENSUS_PATH_UNKNOWN) { if (hidserv_needs_uptime) flags |= CIRCLAUNCH_NEED_UPTIME;