[tor-bugs] #6572 [Tor]: “Bug: Circuit somehow completed a hop while the network was not live.”
Tor Bug Tracker & Wiki
blackhole at torproject.org
Wed Mar 27 01:04:57 UTC 2013
#6572: “Bug: Circuit somehow completed a hop while the network was not live.”
---------------------------------------+------------------------------------
Reporter: bpmcontrol | Owner: mikeperry
Type: defect | Status: needs_information
Priority: normal | Milestone: Tor: 0.2.4.x-final
Component: Tor | Version:
Keywords: tor-client 024-deferrable | Parent:
Points: | Actualpoints:
---------------------------------------+------------------------------------
Changes (by mikeperry):
* status: assigned => needs_information
Comment:
nickm: I think I need your help here with Tor's network-related codepaths.
Here's the situation: This log message is emitted because a circuit timed
with cpath->state == CPATH_STATE_OPEN, but that circuit was launched
*before* the last recorded network activity. Obviously this is an
impossibility, hence the warn. We record timestamps of network activity by
calling circuit_build_times_network_is_live() in various places in the
codebase where we receive network data. The timestamps in this log message
indicate we must have forgotten to add a call somewhere such that the
circuit was able to transition to CPATH_STATE_OPEN for its first hop
without us calling circuit_build_times_network_is_live().
My question is: Where should we call circuit_build_times_network_is_live()
so that we're *sure* that we received fresh, valid data from the Internet?
I thought that the calls to circuit_build_times_network_is_live() from
connection_or_process_cells_from_inbuf() should have covered everything,
but is there someplace deeper we should use instead?
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/6572#comment:11>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list