On Mon, Jun 04, 2012 at 09:35:10PM -0700, Zack Weinberg wrote:
On 2012-06-04 8:13 PM, David Fifield wrote:
$ git clone https://git.torproject.org/stegotorus.git $ cd stegotorus $ autoreconf -i $ ./configure&& make $ ./stegotorus null socks 127.0.0.1:5000 [info] ./stegotorus process 28359 now initialized $ tor ClientTransportPlugin "stegotorus socks4 127.0.0.1:5000" UseBridges 1 Bridge "stegotorus 87.73.82.145:8080"
I found the bridge IP address in scripts/torrc. At this point stegotorus printed out:
[info] 127.0.0.1:5000: new connection to socks client from 127.0.0.1:42233 [info]<1> trying to connect to 87.73.82.145:8080 [info]<1.1> network error in read: Connection reset by peer
[error] Segmentation fault at 0000000000000010 ./stegotorus[0x4054b6] /lib/x86_64-linux-gnu/libc.so.6(+0x324f0)[0x7fcff4cee4f0] ./stegotorus[0x40ec11] ./stegotorus[0x405f7a] /usr/lib/libevent-2.0.so.5(+0x1bc4a)[0x7fcff5df8c4a] /usr/lib/libevent-2.0.so.5(event_base_loop+0x414)[0x7fcff5dee254] ./stegotorus[0x404e76] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd)[0x7fcff4cdaead] ./stegotorus[0x405291] Segmentation fault
This looks like a genuine bug - probably failure to handle ECONNRESET correctly somewhere. I'll see if I can reproduce it, but it would be helpful to me if you changed your stegotorus invocation to
./stegotorus --log-min-severity=debug \ null socks 127.0.0.1:5000 >& stegotorus.log
and sent me (off-list) the log file.
So, I don't get the crash today, but also the bridge address is today accepting my connections. So I can actually get Tor to build a circuit and everything. This is in stegotorus-null.log.gz.
I also tried against a server that sends a RST to try to simulate what happened yesterday, but it appears to be gracefully handled. That log is stegotorus-rst.log.gz.
Sorry, I should have tried this again yesterday. Maybe I had a glibc version skew or something that resolved itself upon rebooting.
David