[tor-bugs] #32094 [Core Tor/Tor]: hs-v3: Stop using ip->circuit_established flag

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Oct 15 19:24:55 UTC 2019


#32094: hs-v3: Stop using ip->circuit_established flag
--------------------------------+--------------------------------
     Reporter:  dgoulet         |      Owner:  dgoulet
         Type:  defect          |     Status:  assigned
     Priority:  Medium          |  Milestone:  Tor: 0.4.3.x-final
    Component:  Core Tor/Tor    |    Version:
     Severity:  Normal          |   Keywords:  tor-hs
Actual Points:                  |  Parent ID:  #30200
       Points:  0.2             |   Reviewer:  asn
      Sponsor:  Sponsor27-must  |
--------------------------------+--------------------------------
 Since #31548, where we forgot to look if the service intro circuit was
 established, we rely on `ip->circuit_established` flag to know if we can
 use the IP (and in many other places as well).

 However, this is a bit of a "duplication" of effort because we have the HS
 circuitmap that keeps all the intro circuits conveniently indexed by IP
 auth key.

 When a circuit closes or is repurposed, that HS map is cleaned up with
 `hs_circ_cleanup()` so regardless what caused the circuit to disappear,
 our map will always be updated properly.

 I believe we should stop relying on the `ip->circuit_established` flag so
 in the future we don't get out of sync with the map by mistake or assume
 state based solely on this flag. The HS map is the only real valid state
 we should be looking at for HS circuit state.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/32094>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list