Fan Jiang fanjiang@thoughtworks.com writes:
[ text/plain ] 2016年4月22日 上午4:54,"George Kadianakis" desnacked@riseup.net写道:
Fan Jiang fanjiang@thoughtworks.com writes:
[ text/plain ] On Thu, Apr 21, 2016 at 4:32 AM, George Kadianakis <desnacked@riseup.net
wrote:
<snip>
It seems like we come to a point that most of prop259 can be stable for a while, we are going to do some cleanup in this implementation and spec. I think next week we can ask more people to review, does that sounds OK?
Sounds good!
BTW, About your segmentfault I couldn't reproduce, maybe related with your torrc/state file?
I think it's some sort of dangling pointer error. e->chosen_by_version seems to be referring to a corrupted memory address.
Not sure if it's caused by my state file, but in general the prop259 branch should work well with any old state file without crashing.
Here is some gdb output from the segfault:
--- Apr 22 17:08:21.161 [notice] Tor v0.2.8.1-alpha-dev (git-d7ed996b2aba9f10) running on Linux with Libevent 2.0.21-stable, OpenSSL 1.0.1k and Zlib 1.2.8. Apr 22 17:08:21.161 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning Apr 22 17:08:21.161 [notice] This version is not a stable Tor release. Expect more bugs than usual. Apr 22 17:08:21.161 [notice] Read configuration file "/home/f/Computers/tor/mytor/../confs/prop259". Apr 22 17:08:21.164 [notice] Opening Socks listener on 127.0.0.1:9999
Program received signal SIGSEGV, Segmentation fault. __strchr_sse2 () at ../sysdeps/x86_64/multiarch/../strchr.S:32 32 ../sysdeps/x86_64/multiarch/../strchr.S: No such file or directory. (gdb) up #1 0x000055555567eb25 in guards_update_state (next=0x5555559c3f40, next@entry=0x5555559c35e8, guards=guards@entry=0x5555559c4620, config_name=config_name@entry=0x55555570c3be "UsedGuard") at src/or/prop259.c:1155 1155 !strchr(e->chosen_by_version, ' ')) { (gdb) p/x e $1 = 0x5555559c42d0 (gdb) p/x e->chosen_by_version $2 = 0x4137323000000000 (gdb) x/s chosen_by_version No symbol "chosen_by_version" in current context. (gdb) x/s e->chosen_by_version 0x4137323000000000: <error: Cannot access memory at address 0x4137323000000000> ---
and here is my state file in case it matters:
--- EntryGuard jaures4 5CF8AFA5E4B0BB88942A44A3F3AAE08C3BDFD60B DirCache EntryGuardAddedBy 5CF8AFA5E4B0BB88942A44A3F3AAE08C3BDFD60B 0.2.5.12 2016-01-11 02:54:36 EntryGuard SGGSUK4 38F423A4320380FFE32DB60B72E7457CD6E3F096 DirCache EntryGuardAddedBy 38F423A4320380FFE32DB60B72E7457CD6E3F096 0.2.5.12 2016-01-25 08:20:31 EntryGuard aTomicRelayFR1 25EF027A85BAA044048AD1D635AF8583DB88C08F DirCache EntryGuardAddedBy 25EF027A85BAA044048AD1D635AF8583DB88C08F 0.2.5.12 2016-02-06 01:04:20 TorVersion Tor 0.2.5.12 (git-3731dd5c3071dcba) LastWritten 2016-02-07 18:18:11 ---