diff --git a/changes/bug14224 b/changes/bug14224 new file mode 100644 index 0000000000..0608940449 --- /dev/null +++ b/changes/bug14224 @@ -0,0 +1,4 @@ + o Minor Bugfix + - Close the intro circuit once we don't have any more usable intro + points instead of making it timeout at some point. This also make sure + no extra HS descriptor fetch is triggered. diff --git a/src/or/rendclient.c b/src/or/rendclient.c index 1353ee38d5..31e220aca2 100644 --- a/src/or/rendclient.c +++ b/src/or/rendclient.c @@ -469,8 +469,11 @@ rend_client_introduction_acked(origin_circuit_t *circ, * too? */ return result; } else { - /* Close circuit because no more intro points are usable thus this - * circuit is not useful anymore. */ + /* Close circuit because no more intro points are usable thus not + * useful anymore. Change it's purpose before so we don't report an + * intro point failure again triggering an extra descriptor fetch. */ + circuit_change_purpose(TO_CIRCUIT(circ), + CIRCUIT_PURPOSE_C_INTRODUCE_ACKED); circuit_mark_for_close(TO_CIRCUIT(circ), END_CIRC_REASON_FINISHED); } }