[tor-bugs] #7959 [Tor]: onionskin_answer(): Bug: couldn't format created cell
Tor Bug Tracker & Wiki
blackhole at torproject.org
Tue Jan 15 17:18:57 UTC 2013
#7959: onionskin_answer(): Bug: couldn't format created cell
-----------------------+----------------------------------------------------
Reporter: sysrqb | Owner:
Type: defect | Status: closed
Priority: major | Milestone: Tor: 0.2.4.x-final
Component: Tor | Version: Tor: 0.2.4.8-alpha
Resolution: fixed | Keywords: tor-relay
Parent: | Points:
Actualpoints: |
-----------------------+----------------------------------------------------
Changes (by sysrqb):
* status: needs_review => closed
* resolution: => fixed
Comment:
Replying to [comment:9 nickm]:
>
> Make sure it's running as a relay, and set UseNTorHandshake 1 ; that'll
be good for something. In fact, I believe that when it tries to make a
testing circuit to probe itself, it'll use the NTor handshake to do so --
probably through a node that doesn't support ntor. So if it decides that
its ORPort is reachable, then this bug is fixed.
Yeah, looking through the logs a little more thoroughly the socket that
resulted in this was a cpu worker connected to localhost (I'm not too
familiar with the cpu worker code right now). The relay eventually figured
out it was reachable after successfully completing appropriate external
connections.
> (I've merged the code, since it's *a* correct thing to do, but I'm still
hoping for more confirmation that it *does* fix this issue.)
{{{
Jan 15 09:44:32.000 [debug] conn_write_callback(): socket 16 wants to
write.
Jan 15 09:44:32.000 [debug] cpuworker_main(): onion_skin_server_handshake
succeeded.
Jan 15 09:44:32.000 [debug] cpuworker_main(): finished writing response.
Jan 15 09:44:32.000 [debug] conn_read_callback(): socket 16 wants to read.
Jan 15 09:44:32.000 [debug] read_to_chunk(): Read 620 bytes. 620 on inbuf.
Jan 15 09:44:32.000 [debug] connection_cpu_process_inbuf(): Unpacking
cpuworker reply, chan_id is 2, circ_id is 56640
Jan 15 09:44:32.000 [debug] circuit_get_by_circid_channel_impl():
circuit_get_by_circid_channel_impl() returning circuit 0x7f7f6c03a8b0 for
circ_id 56640, channel ID 2 (0x7f7f6c014b90)
Jan 15 09:44:32.000 [debug] onionskin_answer(): init digest forward
0x58de764c, backward 0x02b123d9.
Jan 15 09:44:32.000 [debug] append_cell_to_circuit_queue(): Made a circuit
active.
Jan 15 09:44:32.000 [debug] append_cell_to_circuit_queue(): Primed a
buffer.
Jan 15 09:44:32.000 [debug] channel_write_packed_cell(): Writing
packed_cell_t 0x7f7f6c03b8a8 to channel 0x7f7f6c014b90 with global ID 2
Jan 15 09:44:32.000 [debug] channel_flush_from_first_active_circuit():
Made a circuit inactive.
Jan 15 09:44:32.000 [debug] onionskin_answer(): Finished sending 'created'
cell.
Jan 15 09:44:32.000 [notice] Self-testing indicates your ORPort is
reachable from the outside. Excellent. Publishing server descriptor.
}}}
and socket 16 is a connection to localhost. :)
Looks like this one is good. Closing
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/7959#comment:12>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list