Unverified Commit 83424cb6 authored by teor's avatar teor
Browse files

Merge remote-tracking branch 'tor-github/pr/1395' into maint-0.3.5

parents f9812ee5 984a28f3
o Major bugfixes (hidden service v3):
- Make onion service always use the exact amount of configured intro points
(or less due to node exlusion). Before, a service could sometimes pick
more intro points than configured with the
HiddenServiceNumIntroductionPoints option. Fixes bug 31548; bugfix on
...@@ -1686,6 +1686,15 @@ build_desc_intro_points(const hs_service_t *service, ...@@ -1686,6 +1686,15 @@ build_desc_intro_points(const hs_service_t *service,
DIGEST256MAP_FOREACH(desc->intro_points.map, key, DIGEST256MAP_FOREACH(desc->intro_points.map, key,
const hs_service_intro_point_t *, ip) { const hs_service_intro_point_t *, ip) {
if (!ip->circuit_established) {
/* Ignore un-established intro points. They can linger in that list
* because their circuit has not opened and they haven't been removed
* yet even though we have enough intro circuits.
* Due to #31561, it can stay in that list until rotation so this check
* prevents to publish an intro point without a circuit. */
hs_desc_intro_point_t *desc_ip = hs_desc_intro_point_new(); hs_desc_intro_point_t *desc_ip = hs_desc_intro_point_new();
if (setup_desc_intro_point(&desc->signing_kp, ip, now, desc_ip) < 0) { if (setup_desc_intro_point(&desc->signing_kp, ip, now, desc_ip) < 0) {
hs_desc_intro_point_free(desc_ip); hs_desc_intro_point_free(desc_ip);
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment