[tor-bugs] #21302 [Core Tor/Tor]: hs: Multiple service issues
Tor Bug Tracker & Wiki
blackhole at torproject.org
Wed Feb 1 21:34:35 UTC 2017
#21302: hs: Multiple service issues
--------------------------+------------------------------------
Reporter: dgoulet | Owner: dgoulet
Type: defect | Status: needs_review
Priority: Medium | Milestone: Tor: 0.3.0.x-final
Component: Core Tor/Tor | Version: Tor: 0.2.9.8
Severity: Normal | Resolution:
Keywords: tor-hs | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
--------------------------+------------------------------------
Comment (by dgoulet):
Replying to [comment:3 nickm]:
> In a82e572e9ff5994d2ba14dcc1a25995f6bdda9b7, how do we know that
count_intro_point_circuits() is always greater than expiring_nodes_len?
In other words, how can we be sure that this subtraction never underflows:
> {{{
> + num_ip_circuits = count_intro_point_circuits(service) -
expiring_nodes_len;
> }}}
Great observation. In *theory*, if a node is in the expiring node list it
means it has a circuit. This is why the third commit actually improves on
that and could be a cause of the unsolved #21297. However, I don't believe
we have a good guarantee of this. Real guarantee would be that when we
close an HS circuits, we also make sure anything expecting a circuit is
cleaned up.
How is this fixup commit looking? `c1f6238c`.
>
> The other commits look okay to me, if you've tested them. (We've
actually removed something with the loop in
0342c1a82c56ad1f9ae9b8a536f32355640dc4bd, yeah?)
Yes it has been tested. Would be nice to have asn's eyes on that as well.
It is quite core in the HS subsystem but worth fixing!
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/21302#comment:4>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list