#25347: Tor stops building circuits, and doesn't start when it has enough directory information -------------------------------------------------+------------------------- Reporter: teor | Owner: asn Type: defect | Status: | assigned Priority: Medium | Milestone: Tor: | 0.3.3.x-final Component: Core Tor/Tor | Version: Tor: | 0.3.0.6 Severity: Normal | Resolution: Keywords: 031-backport, 032-backport, | Actual Points: 033-must, tor-guard, tor-client, tbb- | usability-website, tbb-needs, | 033-triage-20180320, 033-included-20180320 | Parent ID: #21969 | Points: 1 Reviewer: | Sponsor: -------------------------------------------------+-------------------------
Comment (by dgoulet): Replying to [comment:11 asn]: > Nick says that if we get a `DESTROY` cell before we receive a `CREATED` cell (or maybe before we send an `EXTEND` cell) we can be sure it comes from the guard since there is no one else on the path. I wonder if this is easy to figure out in code. Code wise this can be simple. You can either add a flag to `circuit_t` that says "Got a CREATED" so if True, any DESTROY cell you get, you won't be able to tell if Guard or not. I think the other way you can do that is walk the `cpath` and see if the first hop is in OPEN state. When you get the CREATED cell, see `circuit_finish_handshake()` which will set the hop state to OPEN. After that, you get the CREATED cell embedded in an EXTENDED cell. -- Ticket URL: <https://trac.torproject.org/projects/tor/ticket/25347#comment:12> Tor Bug Tracker & Wiki <https://trac.torproject.org/> The Tor Project: anonymity online
_______________________________________________ tor-bugs mailing list tor-bugs@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs