mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
3036bedf30d413e8236ec962b9c91b66988c2204
This is a change intended for 0.4.7 maintenance as well as main.
The CI builds use Debian Buster which is now end of life, and I was
experiencing inconsistent CI failures with accessing its security update
server. I wanted to update CI to a distro that isn't EOL, and Bullseye
is the current stable release of Debian.
This opened up a small can of worms that this commit also deals with.
In particular there's a docker engine bug that we work around by
removing the docker-specific apt cleanup script if it exists, and
there's a new incompatibility between tracing and sandbox support.
The tracing/sandbox incompatibility itself had two parts:
- The membarrier() syscall is used to deliver inter-processor
synchronization events, and the external "userspace-rcu"
data structure library would make assumptions that if membarrier
is available at initialization it always will be. This caused
segfaults in some cases when running trace + sandbox. Resolved this
by allowing membarrier entirely, in the sandbox.
- userspace-rcu also assumes it can block signals, and fails
hard if this can't be done. We already include a similar carveout
to allow this in the sandbox for fragile-hardening, so I extended
that to cover tracing as well.
Addresses issue #40799
Signed-off-by: Micah Elizabeth Scott <beth@torproject.org>
Tor protects your privacy on the internet by hiding the connection between your Internet address and the services you use. We believe Tor is reasonably secure, but please ensure you read the instructions and configure it properly.
Build
To build Tor from source:
./configure
make
make install
To build Tor from a just-cloned git repository:
./autogen.sh
./configure
make
make install
Releases
The tarballs, checksums and signatures can be found here: https://dist.torproject.org
- Checksum:
<tarball-name>.sha256sum - Signatures:
<tarball-name>.sha256sum.asc
Schedule
You can find our release schedule here:
Keys that CAN sign a release
The following keys are the maintainers of this repository. One or many of these keys can sign the releases, do NOT expect them all:
- Alexander Færøy: 514102454D0A87DB0767A1EBBE6A0531C18A9179
- David Goulet: B74417EDDF22AC9F9E90F49142E86A2A11F48D36
- Nick Mathewson: 2133BC600AB133E1D826D173FE43009C4607B1FB
Development
See our hacking documentation in doc/HACKING/.
Resources
Home page:
Download new versions:
Documentation, including links to installation and setup instructions:
Frequently Asked Questions:
Description
Languages
C
94.4%
Python
1.5%
C++
1.1%
Shell
1.1%
M4
0.9%
Other
0.8%