>Synopsis: <synopsis of the problem (one line)>
>Category: <PR category (one line)>
>Environment:
System : OpenBSD 6.3
Details : OpenBSD 6.3-current (GENERIC) #53: Thu Apr 19 11:07:26
MDT 2018
[email protected]:/usr/src/sys/arch/macppc/compile/GENERIC
Architecture: OpenBSD.macppc
Machine : macppc
>Description:
When I use torsocks to proxy an https request with curl or w3m,
they (w3m or curl) works correctly but exit with segmentation
fault and produce a core dump
>How-To-Repeat:
pkg_add tor torsocks curl
rcctl enable tor
rcctl start tor
torsocks curl https://openbsd.org
or
torsocks w3m https://openbsd.org | cat -
>Fix:
I don't know but please find backtrace of core dumps of curl and w3m
CURL CORE DUMP :
Core was generated by `curl'.
Program terminated with signal 11, Segmentation fault.
(no debugging symbols found)
Loaded symbols for /usr/local/bin/curl
Reading symbols from /usr/local/lib/torsocks/libtorsocks.so.1.0...(no
debugging symbols found)...done.
Loaded symbols for /usr/local/lib/torsocks/libtorsocks.so.1.0
Reading symbols from /usr/local/lib/libcurl.so.25.15...done.
Loaded symbols for /usr/local/lib/libcurl.so.25.15
Reading symbols from /usr/local/lib/libnghttp2.so.0.13...done.
Loaded symbols for /usr/local/lib/libnghttp2.so.0.13
Reading symbols from /usr/lib/libssl.so.45.1...done.
Loaded symbols for /usr/lib/libssl.so.45.1
Reading symbols from /usr/lib/libcrypto.so.43.1...gdbdone.
Loaded symbols for /usr/lib/libcrypto.so.43.1
Reading symbols from /usr/lib/libz.so.5.0...done.
Loaded symbols for /usr/lib/libz.so.5.0
Reading symbols from /usr/lib/libpthread.so.25.1...done.
Loaded symbols for /usr/lib/libpthread.so.25.1
Reading symbols from /usr/lib/libc.so.92.3...done.
Loaded symbols for /usr/lib/libc.so.92.3
Reading symbols from /usr/libexec/ld.so...done.
Loaded symbols for /usr/libexec/ld.so
#0 0xa5f97afc in BIO_write (b=0xd997ec00, in=0xc3dcec00, inl=24) at
/usr/src/lib/libcrypto/bio/bio_lib.c:289
289 if ((b->method == NULL) || (b->method->bwrite == NULL))
{
(gdb) bt
#0 0xa5f97afc in BIO_write (b=0xd997ec00, in=0xc3dcec00, inl=24) at
/usr/src/lib/libcrypto/bio/bio_lib.c:289
#1 0xa5f97aac in BIO_write (b=0xd997ec00, in=0xc3dcec00, inl=24) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#2 0xa5f97aac in BIO_write (b=0xd997ec00, in=0xc3dcec00, inl=24) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#3 0xa5f97aac in BIO_write (b=0xd997ec00, in=0xc3dcec00, inl=24) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#4 0xa5f97aac in BIO_write (b=0xd997ec00, in=0xc3dcec00, inl=24) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#5 0xa5f97aac in BIO_write (b=0xd997ec00, in=0xc3dcec00, inl=24) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#6 0xa5f97aac in BIO_write (b=0xd997ec00, in=0xc3dcec00, inl=24) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#7 0xa5f97aac in BIO_write (b=0xd997ec00, in=0xc3dcec00, inl=24) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
Previous frame inner to this frame (corrupt stack?)
## W3M CORE DUMP
Core was generated by `w3m'.
Program terminated with signal 11, Segmentation fault.
(no debugging symbols found)
Loaded symbols for /usr/local/bin/w3m
Reading symbols from /usr/local/lib/torsocks/libtorsocks.so.1.0...(no
debugging symbols found)...done.
Loaded symbols for /usr/local/lib/torsocks/libtorsocks.so.1.0
Reading symbols from /usr/lib/libm.so.10.1...done.
Loaded symbols for /usr/lib/libm.so.10.1
Reading symbols from /usr/local/lib/libintl.so.6.0...done.
Loaded symbols for /usr/local/lib/libintl.so.6.0
Reading symbols from /usr/local/lib/libiconv.so.6.0...done.
Loaded symbols for /usr/local/lib/libiconv.so.6.0
Reading symbols from /usr/lib/libc.so.92.3...done.
Loaded symbols for /usr/lib/libc.so.92.3
Reading symbols from /usr/local/lib/libgc.so.4.0...done.
Loaded symbols for /usr/local/lib/libgc.so.4.0
Reading symbols from /usr/lib/libssl.so.45.1...done.
Loaded symbols for /usr/lib/libssl.so.45.1
Reading symbols from /usr/lib/libcrypto.so.43.1...done.
Loaded symbols for /usr/lib/libcrypto.so.43.1
Reading symbols from /usr/lib/libcurses.so.14.0...done.
Loaded symbols for /usr/lib/libcurses.so.14.0
Reading symbols from /usr/lib/libpthread.so.25.1...done.
Loaded symbols for /usr/lib/libpthread.so.25.1
Reading symbols from /usr/libexec/ld.so...done.
Loaded symbols for /usr/libexec/ld.so
#0 0xdbc1cafc in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:289
289 if ((b->method == NULL) || (b->method->bwrite == NULL))
{
(gdb) bt
#0 0xdbc1cafc in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:289
#1 0xdbc1caac in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#2 0xdbc1caac in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#3 0xdbc1caac in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#4 0xdbc1caac in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#5 0xdbc1caac in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#6 0xdbc1caac in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#7 0xdbc1caac in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#8 0xdbc1caac in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
#9 0xdbc1caac in BIO_write (b=0xbef80cc0, in=0xec313400, inl=25) at
/usr/src/lib/libcrypto/bio/bio_lib.c:281
Previous frame inner to this frame (corrupt stack?)