From the changelog… o Major bugfixes (congestion control, TROVE-2022-001): - Fix a scenario where RTT estimation can become wedged, seriously degrading congestion control performance on all circuits. This impacts clients, onion services, and relays, and can be triggered remotely by a malicious endpoint. Tracked as CVE-2022-33903. Fixes bug 40626; bugfix on 0.4.7.5-alpha. o Minor features (fallbackdir): - Regenerate fallback directories generated on June 17, 2022. o Minor features (geoip data): - Update the geoip files to match the IPFire Location Database, as retrieved on 2022/06/17. o Minor bugfixes (linux seccomp2 sandbox): - Allow the rseq system call in the sandbox. This solves a crash issue with glibc 2.35 on Linux. Patch from pmu-ipf. Fixes bug 40601; bugfix on 0.3.5.11. o Minor bugfixes (logging): - Demote a harmless warn log message about finding a second hop to from warn level to info level, if we do not have enough descriptors yet. Leave it at notice level for other cases. Fixes bug 40603; bugfix on 0.4.7.1-alpha. - Demote a notice log message about "Unexpected path length" to info level. These cases seem to happen arbitrarily, and we likely will never find all of them before the switch to arti. Fixes bug 40612; bugfix on 0.4.7.5-alpha. o Minor bugfixes (relay, logging): - Demote a harmless XOFF log message to from notice level to info level. Fixes bug 40620; bugfix on 0.4.7.5-alpha. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
187 lines
4.5 KiB
Makefile
187 lines
4.5 KiB
Makefile
#
|
|
# Copyright (C) 2008-2019 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=tor
|
|
PKG_VERSION:=0.4.7.8
|
|
PKG_RELEASE:=1
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_SOURCE_URL:=https://dist.torproject.org/ \
|
|
https://archive.torproject.org/tor-package-archive
|
|
PKG_HASH:=9e9a5c67ad2acdd5f0f8be14ed591fed076b1708abf8344066990a0fa66fe195
|
|
PKG_MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de> \
|
|
Peter Wagner <tripolar@gmx.at>
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
PKG_CPE_ID:=cpe:/a:torproject:tor
|
|
|
|
PKG_INSTALL:=1
|
|
PKG_FIXUP:=autoreconf
|
|
PKG_BUILD_PARALLEL:=1
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Package/tor/Default
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
URL:=https://www.torproject.org/
|
|
USERID:=tor=52:tor=52
|
|
DEPENDS:=+libevent2 +libopenssl +libpthread +librt +zlib +libcap
|
|
TITLE:=Tor routing daemon
|
|
endef
|
|
|
|
define Package/tor/Default/description
|
|
Tor is a toolset for a wide range of organizations and people that want to
|
|
improve their safety and security on the Internet. Using Tor can help you
|
|
anonymize web browsing and publishing, instant messaging, IRC, SSH, and
|
|
more. Tor also provides a platform on which software developers can build
|
|
new applications with built-in anonymity, safety, and privacy features.
|
|
endef
|
|
|
|
define Package/tor
|
|
$(call Package/tor/Default)
|
|
TITLE+= (full)
|
|
CONFLICTS:=tor-basic
|
|
PROVIDES:=tor-basic
|
|
VARIANT:=full
|
|
endef
|
|
|
|
define Package/tor/description
|
|
$(call Package/tor/Default/description)
|
|
|
|
This package contains the full tor daemon.
|
|
|
|
endef
|
|
|
|
define Package/tor-basic
|
|
$(call Package/tor/Default)
|
|
TITLE+= (no bridge/relay support)
|
|
VARIANT:=basic
|
|
endef
|
|
|
|
define Package/tor-basic/description
|
|
$(call Package/tor/Default/description)
|
|
|
|
This package contains the basic tor daemon, without bridge/relay support.
|
|
|
|
endef
|
|
|
|
define Package/tor-gencert
|
|
$(call Package/tor/Default)
|
|
TITLE:=Tor certificate generation
|
|
DEPENDS:=tor
|
|
endef
|
|
|
|
define Package/tor-gencert/description
|
|
$(call Package/tor/Default/description)
|
|
|
|
Generate certs and keys for Tor directory authorities.
|
|
|
|
endef
|
|
|
|
define Package/tor-resolve
|
|
$(call Package/tor/Default)
|
|
TITLE:=tor hostname resolve
|
|
DEPENDS:=tor-basic
|
|
endef
|
|
|
|
define Package/tor-resolve/description
|
|
$(call Package/tor/Default/description)
|
|
|
|
Resolve a hostname to an IP address via tor.
|
|
|
|
endef
|
|
|
|
define Package/tor-geoip
|
|
$(call Package/tor/Default)
|
|
TITLE:=GeoIP db for tor
|
|
DEPENDS:=tor-basic
|
|
endef
|
|
|
|
define Package/tor-geoip/description
|
|
$(call Package/tor/Default/description)
|
|
|
|
This package contains a GeoIP database mapping IP addresses to countries.
|
|
|
|
endef
|
|
|
|
define Package/tor/conffiles
|
|
/etc/tor/torrc
|
|
/var/lib/tor/fingerprint
|
|
/var/lib/tor/keys/*
|
|
/etc/config/tor
|
|
endef
|
|
|
|
Package/tor-basic/conffiles = $(Package/tor/conffiles)
|
|
|
|
CONFIGURE_ARGS += \
|
|
--with-libevent-dir="$(STAGING_DIR)/usr" \
|
|
--with-openssl-dir="$(STAGING_DIR)/usr" \
|
|
--with-zlib-dir="$(STAGING_DIR)/usr" \
|
|
--disable-asciidoc \
|
|
--disable-html-manual \
|
|
--disable-manpage \
|
|
--disable-seccomp \
|
|
--disable-libscrypt \
|
|
--disable-unittests \
|
|
--disable-lzma \
|
|
--disable-zstd \
|
|
--with-tor-user=tor \
|
|
--with-tor-group=tor \
|
|
--enable-pic
|
|
|
|
ifeq ($(BUILD_VARIANT),basic)
|
|
CONFIGURE_ARGS += --disable-module-relay
|
|
endif
|
|
|
|
|
|
TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto \
|
|
$(if $(CONFIG_OPENSSL_ENGINE),,-DDISABLE_ENGINES)
|
|
|
|
TARGET_LDFLAGS += -Wl,--gc-sections -flto
|
|
|
|
CONFIGURE_VARS += \
|
|
CROSS_COMPILE="yes" \
|
|
ac_cv_func_mallinfo=no
|
|
|
|
define Package/tor/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tor $(1)/usr/sbin/
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) ./files/tor.init $(1)/etc/init.d/tor
|
|
$(INSTALL_DIR) $(1)/etc/tor
|
|
$(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/tor/torrc.sample $(1)/etc/tor/torrc
|
|
$(INSTALL_DIR) $(1)/etc/config
|
|
$(INSTALL_CONF) ./files/tor.conf $(1)/etc/config/tor
|
|
endef
|
|
|
|
Package/tor-basic/install = $(Package/tor/install)
|
|
|
|
define Package/tor-gencert/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tor-gencert $(1)/usr/sbin/
|
|
endef
|
|
|
|
define Package/tor-resolve/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tor-resolve $(1)/usr/sbin/
|
|
endef
|
|
|
|
define Package/tor-geoip/install
|
|
$(INSTALL_DIR) $(1)/usr/share/tor
|
|
$(INSTALL_DATA) \
|
|
$(PKG_INSTALL_DIR)/usr/share/tor/geoip \
|
|
$(PKG_INSTALL_DIR)/usr/share/tor/geoip6 \
|
|
$(1)/usr/share/tor/
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,tor))
|
|
$(eval $(call BuildPackage,tor-basic))
|
|
$(eval $(call BuildPackage,tor-gencert))
|
|
$(eval $(call BuildPackage,tor-resolve))
|
|
$(eval $(call BuildPackage,tor-geoip))
|