On 08/09/2012 04:54 PM, Nick Mathewson wrote:
On Thu, Aug 9, 2012 at 6:04 AM, Jordi Espasa Clofent jespasac@minibofh.org wrote:
Can you see what arguments are being passed to configure, and what configure does with them? Is the freebsd build process passing --with-tcmalloc to the configure script?
Sure.
mb# pwd && make showconfig
Hm. Does all that stuff actually say which options *were* passed to the configure script? It seems as though --with-tcmalloc *should* have been passed on the command line to configure, but I'm not at all sure which of that tells me which arguments *were* passed to configure.
Well, still the same forcing the configure tcmalloc argument to the make install command:
mb# make WITH_TCMALLOC=1 install ===> Installing for tor-0.2.2.37 ===> tor-0.2.2.37 depends on file: /usr/local/lib/libcrypto.so.7 - found ===> tor-0.2.2.37 depends on shared library: event-2.0 - found ===> tor-0.2.2.37 depends on shared library: tcmalloc - found ===> Generating temporary packing list ===> Checking if security/tor already installed ===> Creating users and/or groups. Using existing group `_tor'. Using existing user `_tor'. Making install in src Making install in common Making install in or cc -DHAVE_CONFIG_H -I. -I../.. -DSHARE_DATADIR=""/usr/local/share"" -DLOCALSTATEDIR=""/usr/local/var"" -DBINDIR=""/usr/local/bin"" -I../../src/common -I/usr/local/include/event2 -I/usr/local/include -I/usr/local/include -O2 -pipe -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -fstack-protector-all -fwrapv -fPIE -Wstack-protector --param ssp-buffer-size=1 -Wall -fno-strict-aliasing -MT tor_main.o -MD -MP -MF .deps/tor_main.Tpo -c -o tor_main.o tor_main.c mv -f .deps/tor_main.Tpo .deps/tor_main.Po cc -O2 -pipe -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -fstack-protector-all -fwrapv -fPIE -Wstack-protector --param ssp-buffer-size=1 -Wall -fno-strict-aliasing -L/usr/local/lib -L/usr/local/lib/event2 -rpath=/usr/local/lib -pie -Wl,-z,relro -Wl,-z,now -o tor tor_main.o ./libtor.a ../common/libor.a ../common/libor-crypto.a ../common/libor-event.a -lz -lm -levent-2.0 -lssl -lcrypto -pthread cc -DHAVE_CONFIG_H -I. -I../.. -DSHARE_DATADIR=""/usr/local/share"" -DLOCALSTATEDIR=""/usr/local/var"" -DBINDIR=""/usr/local/bin"" -I../../src/common -I/usr/local/include/event2 -I/usr/local/include -I/usr/local/include -O2 -pipe -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -fstack-protector-all -fwrapv -fPIE -Wstack-protector --param ssp-buffer-size=1 -Wall -fno-strict-aliasing -MT tor_main.o -MD -MP -MF .deps/tor_main.Tpo -c -o tor_main.o tor_main.c mv -f .deps/tor_main.Tpo .deps/tor_main.Po test -z "/usr/local/bin" || /usr/local/bin/gmkdir -p "/usr/local/bin" install -s -o root -g wheel -m 555 tor '/usr/local/bin' Making install in test Making install in tools test -z "/usr/local/bin" || /usr/local/bin/gmkdir -p "/usr/local/bin" install -s -o root -g wheel -m 555 tor-resolve tor-gencert '/usr/local/bin' Making install in win32 Making install in config test -z "/usr/local/etc/tor" || /usr/local/bin/gmkdir -p "/usr/local/etc/tor" install -o root -g wheel -m 444 torrc.sample '/usr/local/etc/tor' test -z "/usr/local/share/tor" || /usr/local/bin/gmkdir -p "/usr/local/share/tor" install -o root -g wheel -m 444 geoip '/usr/local/share/tor' Making install in doc test -z "/usr/local/man/man1" || /usr/local/bin/gmkdir -p "/usr/local/man/man1" install -o root -g wheel -m 444 tor.1 tor-resolve.1 torify.1 tor-gencert.1 '/usr/local/man/man1' Making install in contrib Making install in suse test -z "/usr/local/bin" || /usr/local/bin/gmkdir -p "/usr/local/bin" install -o root -g wheel -m 555 torify '/usr/local/bin' test -z "/usr/local/etc/tor" || /usr/local/bin/gmkdir -p "/usr/local/etc/tor" install -o root -g wheel -m 444 tor-tsocks.conf.sample '/usr/local/etc/tor' ===> Installing rc.d startup script(s) /bin/mkdir -p /var/run/tor /usr/sbin/chown -R _tor:_tor /var/run/tor /usr/bin/touch /var/log/tor /usr/sbin/chown _tor:_tor /var/log/tor /bin/mkdir -p /var/db/tor/data /usr/sbin/chown -R _tor:_tor /var/db/tor /bin/chmod -R 700 /var/db/tor /bin/cat /usr/ports/security/tor/work/pkg-message ================================================================================ To enable the tor server, set tor_enable="YES" in your /etc/rc.conf and edit /usr/local/etc/tor/torrc. Note that the rc.subr script overrides many torrc options and is tunable: see /usr/local/etc/rc.d/tor for details. To use the torify script, install the net/torsocks port. After removing the package, or updating to a new version, users may need to delete all files in /var/db/tor. ================================================================================ ===> Correct pkg-plist sequence to create group(s) and user(s) ===> Compressing manual pages for tor-0.2.2.37 ===> Registering installation for tor-0.2.2.37 ===> SECURITY REPORT: This port has installed the following files which may act as network servers and may therefore pose a remote security risk to the system. /usr/local/bin/tor-resolve /usr/local/bin/tor-gencert /usr/local/bin/tor
This port has installed the following startup scripts which may cause these network services to be started at boot time. /usr/local/etc/rc.d/tor
If there are vulnerabilities in these programs there may be a security risk to the system. FreeBSD makes no guarantee about the security of ports included in the Ports Collection. Please type 'make deinstall' to deinstall the port if this is a concern.
For more information, and contact details about the security status of this software, see the following webpage: http://torproject.org/
mb# ldd /usr/local/bin/tor /usr/local/bin/tor: libz.so.5 => /lib/libz.so.5 (0x281aa000) libm.so.5 => /lib/libm.so.5 (0x281bc000) libevent-2.0.so.6 => /usr/local/lib/event2/libevent-2.0.so.6 (0x2844e000) libssl.so.7 => /usr/local/lib/libssl.so.7 (0x28489000) libcrypto.so.7 => /usr/local/lib/libcrypto.so.7 (0x284d7000) libthr.so.3 => /lib/libthr.so.3 (0x281df000) libc.so.7 => /lib/libc.so.7 (0x28090000)
Have a look near the top of "config.log" (please don't send the whole file; it will be enormous) -- there should be a part that says what command line configure got.
I guess is /usr/ports/security/tor/work/tor-0.2.2.37/config.log
Well, in here I see:
This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake.
It was created by configure, which was generated by GNU Autoconf 2.69. Invocation command line was
$ ./configure --with-openssl-dir=/usr/local --disable-asciidoc --enable-linker-hardening --enable-gcc-hardening --enable-buf-freelists --disable-instrument-downloads --enable-threads --enable-transparent --prefix=/usr/local --mandir=/usr/local/man --infodir=/usr/local/info/ --build=i386-portbld-freebsd8.1
## --------- ## ## Platform. ## ## --------- ##
hostname = mb uname -m = i386 uname -r = 8.1-RELEASE uname -s = FreeBSD uname -v = FreeBSD 8.1-RELEASE #0: Mon Jul 19 02:55:53 UTC 2010 root@almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC
/usr/bin/uname -p = i386 /bin/uname -X = unknown
/bin/arch = unknown /usr/bin/arch -k = unknown /usr/convex/getsysinfo = unknown /usr/bin/hostinfo = unknown /bin/machine = unknown /usr/bin/oslevel = unknown /bin/universe = unknown
PATH: /sbin PATH: /bin PATH: /usr/sbin PATH: /usr/bin PATH: /usr/games PATH: /usr/local/sbin PATH: /usr/local/bin PATH: /root/bin
So, actually I cannot see the tcmalloc is used by configure.