aboutsummaryrefslogtreecommitdiff
path: root/security/tor
diff options
context:
space:
mode:
authorBrendan Fabeny <bf@FreeBSD.org>2012-11-20 15:08:34 +0000
committerBrendan Fabeny <bf@FreeBSD.org>2012-11-20 15:08:34 +0000
commit12311574e9ad2a9e6d6a375b1b44a7b05f64a9d4 (patch)
tree99c253442a5ae698de3c74bc0dff6ee5e708ee13 /security/tor
parenteae222a5526e58d7b7beb62d7e1b7a526ff02b78 (diff)
downloadports-12311574e9ad2a9e6d6a375b1b44a7b05f64a9d4.tar.gz
ports-12311574e9ad2a9e6d6a375b1b44a7b05f64a9d4.zip
Notes
Diffstat (limited to 'security/tor')
-rw-r--r--security/tor/Makefile61
-rw-r--r--security/tor/distinfo4
-rw-r--r--security/tor/files/patch-configure45
-rw-r--r--security/tor/files/tor.in2
4 files changed, 73 insertions, 39 deletions
diff --git a/security/tor/Makefile b/security/tor/Makefile
index ca0887a33833..ed104aee74ef 100644
--- a/security/tor/Makefile
+++ b/security/tor/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= tor
-DISTVERSION= 0.2.2.39
+DISTVERSION= 0.2.3.25
CATEGORIES= security net ipv6
MASTER_SITES= https://www.torproject.org/dist/ \
ftp://ftp.bit.nl/mirror/tor/ \
@@ -59,21 +59,22 @@ COMMENT= An anonymizing overlay network for TCP
LICENSE= BSD
LICENSE_FILE= ${WRKSRC}/LICENSE
-LIB_DEPENDS= event-2.0:${PORTSDIR}/devel/libevent2
-
GNU_CONFIGURE= yes
-CONFIGURE_ARGS= --with-openssl-dir="${OPENSSLBASE}" --disable-asciidoc \
- --enable-linker-hardening
+CONFIGURE_ARGS= --with-openssl-dir="${OPENSSLBASE}" --disable-asciidoc
CONFIGURE_ENV= TOR_CPPFLAGS_libevent="-I${LOCALBASE}/include/event2 -I${LOCALBASE}/include" \
TOR_LDFLAGS_libevent="-L${LOCALBASE}/lib/event2" \
- TOR_LIBEVENT_LIBS="-levent-2.0"
+ TOR_LIBEVENT_LIBS="${TOR_LIBEVENT_LIBS}"
-OPTIONS_DEFINE = BUFFREELISTS GMAKE INSTR_DOWNLOADS TCMALLOC THREADS TRANSPARENT
+OPTIONS_DEFINE= BUFFEREVENTS BUFFREELISTS GMAKE INSTR_DOWNLOADS \
+ STATIC_TOR TCMALLOC THREADS TOR2WEB TRANSPARENT
+BUFFEREVENTS_DESC= Use libevent's buffered IO
BUFFREELISTS_DESC= Freelists for buffer RAM
GMAKE_DESC= Parallel build safety via GNU make
INSTR_DOWNLOADS_DESC= Instrument downloads for analysis
+STATIC_TOR_DESC= Build a static tor
TCMALLOC_DESC= Use the tcmalloc memory allocation library
+TOR2WEB_DESC= Faster but non-anonymous hidden services
TRANSPARENT_DESC= Transparent proxy support
OPTIONS_DEFAULT= BUFFREELISTS THREADS TRANSPARENT
@@ -101,17 +102,25 @@ MAKE_JOBS_UNSAFE= yes
.if ( (${OSVERSION} >= 703100 && ${OSVERSION} < 800000) || \
(${OSVERSION} >= 800500 && ${OSVERSION} < 900000) || \
-(${OSVERSION} >= 900003) ) && !defined(USE_GCC) && empty(CC:T:M*gcc4*) \
-&& empty(ARCH:Mia64)
+(${OSVERSION} >= 900003) ) && !defined(USE_GCC) && empty(CC:T:M*gcc4*) && \
+empty(PORT_OPTIONS:MSTATIC_TOR) && empty(ARCH:Mia64)
CONFIGURE_ARGS+= --enable-gcc-hardening
+.else
+CONFIGURE_ARGS+= --disable-gcc-hardening
.endif
.if ( ${OSVERSION} < 704000 || \
-(${OSVERSION} >= 800000 && ${OSVERSION} < 801500) || \
-(${OSVERSION} >= 900000 && ${OSVERSION} < 900011) )
+(${OSVERSION} >= 800000 && ${OSVERSION} < 802000) || \
+(${OSVERSION} >= 900000 && ${OSVERSION} < 900027) )
WITH_OPENSSL_PORT= yes
.endif
+.if ${PORT_OPTIONS:MBUFFEREVENTS}
+CONFIGURE_ARGS+= --enable-bufferevents
+.else
+CONFIGURE_ARGS+= --disable-bufferevents
+.endif
+
.if ${PORT_OPTIONS:MBUFFREELISTS}
CONFIGURE_ARGS+= --enable-buf-freelists
.else
@@ -124,10 +133,31 @@ CONFIGURE_ARGS+= --enable-instrument-downloads
CONFIGURE_ARGS+= --disable-instrument-downloads
.endif
+.if ${PORT_OPTIONS:MSTATIC_TOR}
+BUILD_DEPENDS += ${LOCALBASE}/lib/event2/libevent.a:${PORTSDIR}/devel/libevent2
+CONFIGURE_ARGS+= --enable-static-tor --with-libevent-dir=${LOCALBASE}/lib/event2 \
+ --with-zlib-dir=/usr/lib --disable-linker-hardening
+TOR_LIBEVENT_LIBS= ${LOCALBASE}/lib/event2/libevent.a
+.if ${PORT_OPTIONS:MBUFFEREVENTS}
+TOR_LIBEVENT_LIBS:= ${LOCALBASE}/lib/event2/libevent_openssl.a ${TOR_LIBEVENT_LIBS}
+.endif
+.else
+CONFIGURE_ARGS+= --enable-linker-hardening
+LIB_DEPENDS+= event-2.0:${PORTSDIR}/devel/libevent2
+TOR_LIBEVENT_LIBS= -levent-2.0
+.if ${PORT_OPTIONS:MBUFFEREVENTS}
+TOR_LIBEVENT_LIBS:= -levent_openssl-2.0 ${TOR_LIBEVENT_LIBS}
+.endif
+.endif
+
.if ${PORT_OPTIONS:MTCMALLOC}
CONFIGURE_ARGS+= --with-tcmalloc
+.if ${PORT_OPTIONS:MSTATIC_TOR}
+BUILD_DEPENDS += ${LOCALBASE}/lib/libtcmalloc.so:${PORTSDIR}/devel/google-perftools
+.else
LIB_DEPENDS+= tcmalloc:${PORTSDIR}/devel/google-perftools
.endif
+.endif
.if ${PORT_OPTIONS:MTHREADS}
CONFIGURE_ARGS+= --enable-threads
@@ -136,6 +166,10 @@ CFLAGS+= ${PTHREAD_CFLAGS}
CONFIGURE_ARGS+= --disable-threads
.endif
+.if ${PORT_OPTIONS:MTOR2WEB}
+CONFIGURE_ARGS+= --enable-tor2web-mode
+.endif
+
.if ${PORT_OPTIONS:MTRANSPARENT}
CONFIGURE_ARGS+= --enable-transparent
.else
@@ -149,7 +183,8 @@ post-patch:
${WRKSRC}/contrib/Makefile.in
@${REINPLACE_CMD} -e '\|^install-data-am:|s|install-docDATA||' \
${WRKSRC}/doc/Makefile.in
- @${REINPLACE_CMD} -e "s|-ltcmalloc|${LOCALBASE}/lib/libtcmalloc.so|" \
+ @${REINPLACE_CMD} -E -e "s@-ltcmalloc@${LOCALBASE}/lib/libtcmalloc.so@" \
+ -e "s@(-z) (relro|now)@-Wl,\1,\2@g" \
${WRKSRC}/configure
post-configure:
@@ -168,8 +203,10 @@ post-install:
${CHMOD} -R 700 /var/db/tor
${CAT} ${PKGMESSAGE}
+.if empty(PORT_OPTIONS:MTOR2WEB)
check regression-test test: build
@( cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE} \
${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} check )
+.endif
.include <bsd.port.mk>
diff --git a/security/tor/distinfo b/security/tor/distinfo
index da342460697a..223b77491728 100644
--- a/security/tor/distinfo
+++ b/security/tor/distinfo
@@ -1,2 +1,2 @@
-SHA256 (tor-0.2.2.39.tar.gz) = 0d0c778d4697d5c5bd4f732ca179c22e8e359c634617ca9b6665e33d1863622a
-SIZE (tor-0.2.2.39.tar.gz) = 2929303
+SHA256 (tor-0.2.3.25.tar.gz) = bb2d6f1136f33e11d37e6e34184143bf191e59501613daf33ae3d6f78f3176a0
+SIZE (tor-0.2.3.25.tar.gz) = 3190011
diff --git a/security/tor/files/patch-configure b/security/tor/files/patch-configure
index 8ca0672c6970..fcc1bc234a18 100644
--- a/security/tor/files/patch-configure
+++ b/security/tor/files/patch-configure
@@ -1,24 +1,6 @@
---- configure.orig 2011-10-26 20:22:26.000000000 -0400
-+++ configure 2011-10-27 23:49:02.000000000 -0400
-@@ -3268,7 +3268,7 @@
- # Check whether --enable-linker-hardening was given.
- if test "${enable_linker_hardening+set}" = set; then :
- enableval=$enable_linker_hardening; if test x$enableval = xyes; then
-- LDFLAGS="$LDFLAGS -z relro -z now"
-+ LDFLAGS="$LDFLAGS -Wl,-z,relro -Wl,-z,now"
- fi
- fi
-
-@@ -5984,7 +5984,7 @@
- ac_res=$ac_cv_search_clock_gettime
- if test "$ac_res" != no; then :
- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-- have_rt=yes
-+# have_rt=yes
- fi
-
- if test "$have_rt" = yes; then
-@@ -5993,6 +5993,7 @@
+--- configure.orig 2012-06-15 03:10:31.000000000 -0400
++++ configure 2012-06-17 08:46:34.000000000 -0400
+@@ -6319,6 +6319,7 @@
fi
@@ -26,7 +8,7 @@
trylibeventdir=""
# Check whether --with-libevent-dir was given.
-@@ -6319,6 +6320,7 @@
+@@ -6645,6 +6646,7 @@
LIBS="$tor_saved_LIBS"
LDFLAGS="$tor_saved_LDFLAGS"
CPPFLAGS="$tor_saved_CPPFLAGS"
@@ -34,7 +16,7 @@
-@@ -6381,6 +6383,7 @@
+@@ -6707,6 +6709,7 @@
fi
@@ -42,11 +24,26 @@
if test "$enable_static_libevent" = "yes"; then
if test "$tor_cv_library_libevent_dir" = "(system)"; then
as_fn_error $? "\"You must specify an explicit --with-libevent-dir=x option when using --enable-static-libevent\"" "$LINENO" 5
-@@ -6390,6 +6393,7 @@
+@@ -6716,6 +6719,7 @@
else
TOR_LIBEVENT_LIBS="-levent"
fi
+fi
+ if test "$enable_bufferevents" = "yes" ; then
+ if test "$ac_cv_header_event2_bufferevent_ssl_h" != "yes" ; then
+@@ -6794,12 +6798,14 @@
+
+ $as_echo "#define USE_BUFFEREVENTS 1" >>confdefs.h
+
++if false ; then
+ if test "$enable_static_libevent" = "yes"; then
+ TOR_LIBEVENT_LIBS="$TOR_LIBDIR_libevent/libevent_openssl.a $TOR_LIBEVENT_LIBS"
+ else
+ TOR_LIBEVENT_LIBS="-levent_openssl $TOR_LIBEVENT_LIBS"
+ fi
+ fi
++fi
+
diff --git a/security/tor/files/tor.in b/security/tor/files/tor.in
index ac24b8ba4872..bf5b9098772a 100644
--- a/security/tor/files/tor.in
+++ b/security/tor/files/tor.in
@@ -37,7 +37,7 @@ required_files=${tor_conf}
required_dirs=${tor_datadir}
pidfile=${tor_pidfile}
command="%%PREFIX%%/bin/${name}"
-command_args="-f ${tor_conf} --PidFile ${tor_pidfile} --RunAsDaemon 1 --DataDirectory ${tor_datadir} --Log notice\ file\ ${tor_logfile}"
+command_args="-f ${tor_conf} --PidFile ${tor_pidfile} --RunAsDaemon 1 --DataDirectory ${tor_datadir} --+Log notice\ file\ ${tor_logfile}"
extra_commands="log"
log_cmd="${name}_log"