Tor links to pthreads on OpenBSD by default
The ChangeLog and configure.in state that threads are disabled on OpenBSD and NetBSD by default, but it still continues to link to them when building.
uname -a OpenBSD chaos.brain-box.net 3.7 FLOW#40 i386
gcc -g -O2 -Wall -g -O2 -o tor buffers.o circuitbuild.o circuitlist.o circuituse.o command.o config.o connection.o connection_edge.o connection_or.o control.o cpuworker.o directory.o dirserv.o dns.o hibernate.o main.o onion.o relay.o rendcommon.o rendclient.o rendmid.o rendservice.o rephist.o router.o routerlist.o routerparse.o tor_main.o ../common/libor.a ../common/libor-crypto.a -lz -lssl -lcrypto -lpthread -levent
../common/libor.a(util.o)(.text+0x3bf): In function tor_strpartition': /home/jon/src/tor-0.1.0.10/src/common/util.c:265: warning: strcpy() is almost always misused, please use strlcpy() ../common/libor.a(util.o)(.text+0xad9): In function
base16_encode':
/home/jon/src/tor-0.1.0.10/src/common/util.c:466: warning: sprintf() is often misused, please use snprintf()
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -g -O2 -Wall -g -O2 -c test.c
gcc -g -O2 -Wall -g -O2 -o test buffers.o circuitbuild.o circuitlist.o circuituse.o command.o config.o connection.o connection_edge.o connection_or.o control.o cpuworker.o directory.o dirserv.o dns.o hibernate.o main.o onion.o relay.o rendcommon.o rendclient.o rendmid.o rendservice.o rephist.o router.o routerlist.o routerparse.o test.o ../common/libor.a ../common/libor-crypto.a -lz -lssl -lcrypto -lpthread -levent
test.o(.text+0x2077): In function test_crypto': /home/jon/src/tor-0.1.0.10/src/or/test.c:490: warning: strcpy() is almost always misused, please use strlcpy() ../common/libor.a(util.o)(.text+0xad9): In function
base16_encode':
/home/jon/src/tor-0.1.0.10/src/common/util.c:466: warning: sprintf() is often misused, please use snprintf()
test.o(.text+0x23c1): In function test_crypto': /home/jon/src/tor-0.1.0.10/src/or/test.c:531: warning: strcat() is almost always misused, please use strlcat() Making all in tools cd ../.. && CONFIG_FILES=src/tools/Makefile CONFIG_HEADERS= /bin/sh ./config.status config.status: creating src/tools/Makefile config.status: executing default-1 commands gcc -DHAVE_CONFIG_H -I. -I. -I../.. -g -O2 -Wall -g -O2 -c tor-resolve.c gcc -g -O2 -Wall -g -O2 -o tor-resolve tor-resolve.o ../common/libor.a -lpthread -levent tor-resolve.o(.text+0x89): In function
build_socks4a_resolve_request':
Even specifing --disable-threads to ./configure does not fix the problem. It still links to pthreads. 'ldd' verifies this :
ldd tor tor: Start End Type Ref Name 00000000 00000000 exe 1 tor 0eb93000 2eb9b000 rlib 1 /usr/lib/libz.so.4.0 09bd2000 29bdd000 rlib 1 /usr/lib/libssl.so.10.0 08447000 28475000 rlib 1 /usr/lib/libcrypto.so.12.0 0ae21000 2ae2a000 rlib 1 /usr/lib/libpthread.so.6.1 0809d000 280d6000 rlib 1 /usr/lib/libc.so.38.0 0890b000 0890b000 rtld 1 /usr/libexec/ld.so
[Automatically added by flyspray2trac: Operating System: BSD]
Trac:
Username: jon