]>
git.ipfire.org Git - thirdparty/tor.git/log
zero_gear [Thu, 12 Jun 2025 15:56:21 +0000 (17:56 +0200)]
channel.h: missed channel state transition comment added
David Goulet [Mon, 5 May 2025 16:37:41 +0000 (12:37 -0400)]
Merge branch 'maint-0.4.8'
orbea [Thu, 31 Aug 2023 21:35:52 +0000 (14:35 -0700)]
crypt_openssl_mgt: define DISABLE_ENGINES after OPENSSL_NO_ENGINE
With LibreSSL-3.8.1 these engines are no long available causing a build
failure, but LibreSSL correctly defines OPENSSL_NO_ENGINE as part of its
opensslfeatures.h. However Tor includes crypto_openssl_mgt.h before any
of the openssl includes which would define OPENSSL_NO_ENGINE and then
fails to define DISABLE_ENGINES.
As the define is used in only a single .c file it is best to move it
there.
Signed-off-by: orbea <orbea@riseup.net>
orbea [Wed, 30 Apr 2025 18:47:13 +0000 (11:47 -0700)]
compat_openssl: fix for LibreSSL 4.1.0
Starting with LibreSSL 4.1.0 this now causes a build failure:
src/lib/tls/tortls_openssl.c: In function 'tor_tls_setup_session_secret_cb':
src/lib/tls/tortls_openssl.c:1059:39: error: passing argument 2 of 'SSL_set_session_secret_cb' from incompatible pointer type [-Wincompatible-pointer-types]
1059 | SSL_set_session_secret_cb(tls->ssl, tor_tls_session_secret_cb, NULL);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| |
| int (*)(SSL *, void *, int *, struct stack_st_SSL_CIPHER *, SSL_CIPHER **, void *) {aka int (*)(struct ssl_st *, void *, int *, struct stack_st_SSL_CIPHER *, struct ssl_cipher_st **, void *)}
In file included from src/lib/tls/tortls_openssl.c:48:
/usr/include/openssl/ssl.h:1489:30: note: expected 'tls_session_secret_cb_fn' {aka 'int (*)(struct ssl_st *, void *, int *, struct stack_st_SSL_CIPHER *, const struct ssl_cipher_st **, void *)'} but argument is of type 'int (*)(SSL *, void *, int *, struct stack_st_SSL_CIPHER *, SSL_CIPHER **, void *)' {aka 'int (*)(struct ssl_st *, void *, int *, struct stack_st_SSL_CIPHER *, struct ssl_cipher_st **, void *)'}
1489 | tls_session_secret_cb_fn tls_session_secret_cb, void *arg);
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
Signed-off-by: orbea <orbea@riseup.net>
David Goulet [Mon, 5 May 2025 15:40:05 +0000 (15:40 +0000)]
Merge branch 'openssl_cleanup_part2_v2' into 'main'
Require OpenSSL >= 1.1.1 or LibreSSL >= 3.7
See merge request tpo/core/tor!885
David Goulet [Mon, 5 May 2025 14:38:52 +0000 (14:38 +0000)]
Merge branch 'openssl_cleanup_part1' into 'main'
Remove support for clients < 0.2.3.17-beta
Closes #41031
See merge request tpo/core/tor!883
Nick Mathewson [Mon, 28 Apr 2025 15:32:21 +0000 (11:32 -0400)]
Warn when OpenSSL is older than 3.0
Running with an unsupported version of openssl is not IMO
a very good idea.
Nick Mathewson [Sun, 27 Apr 2025 15:19:29 +0000 (11:19 -0400)]
changes file for new *ssl version requirements.
Nick Mathewson [Sun, 27 Apr 2025 14:51:12 +0000 (10:51 -0400)]
Remove code based on OPENSSL_VERSION_NUMBER
(Except for some code in aes_openssl.c, which has potential to conflict
with CGO-related branches.)
Nick Mathewson [Sun, 27 Apr 2025 14:47:45 +0000 (10:47 -0400)]
Remove NEW_THREAD_API
Every supported OpenSSL version and fork has the modern API.
Nick Mathewson [Sun, 27 Apr 2025 14:27:05 +0000 (10:27 -0400)]
Remove OPENSSL_1_1_API macro
We no longer support any version without this API.
Nick Mathewson [Sun, 27 Apr 2025 14:04:07 +0000 (10:04 -0400)]
Remove HAVE_STRUCT_SSL_METHOD_ST_GET_CIPHER_BY_CHAR as unused
It was for a compatibility kludge which, mercifully, we no longer need.
Nick Mathewson [Sun, 27 Apr 2025 14:03:04 +0000 (10:03 -0400)]
Remove HAVE_SSL_STATE and SIZEOF_SHA_CTX
HAVE_SSL_STATE is always "no"; SIZEOF_SHA_CTX is never used.
Nick Mathewson [Sat, 26 Apr 2025 13:37:33 +0000 (09:37 -0400)]
Require OpenSSL >= 1.1.1 or LibreSSL >= 3.7
3.0 is the oldest supported version of OpenSSL; it was first released
in September 2021. OpenSSL 1.1.1 (the previous series) reached EOL in
September 2023, but it is still used in Debian oldstable, which will
be around till September 2026.
LibreSSL 3.7 is not quite supported, but I don't have as firm a conviction
about which LibreSSL versions we should handle. It was released in 2022.
Nick Mathewson [Mon, 28 Apr 2025 15:10:55 +0000 (11:10 -0400)]
Remove tor_tls_verify
Despite its name, it was only used for the v1 handshake.
Nick Mathewson [Sun, 27 Apr 2025 14:31:24 +0000 (10:31 -0400)]
Fix compilation on Libressl
Nick Mathewson [Fri, 25 Apr 2025 14:24:50 +0000 (10:24 -0400)]
Restore a pair of erroneously removed cases
The one in connection_or.c was crucial: it's the
thing that made OR negotiation actually work.
The one in channeltls.c was just defensive programming, but it's
valid defensive programming: by the time we enter from
channel_handle_var_cell, channel_tls_process_vesions_cell,
we have changed our state via enter_v3_handshake_with_cell.
Nick Mathewson [Fri, 25 Apr 2025 00:41:21 +0000 (20:41 -0400)]
Fix compilation for nss.
Nick Mathewson [Thu, 24 Apr 2025 18:51:56 +0000 (14:51 -0400)]
Changes file for 41031.
Nick Mathewson [Thu, 24 Apr 2025 18:25:24 +0000 (14:25 -0400)]
Remove support for client cipher classification.
For a long time, clients would lie about the set of ciphersuites
they supported, in a misguided pre-pluggable-transport attempt
to avoid protocol identification.
Such clients are now long gone; clients stopped lying
about ciphersuites after 0.2.3.17-beta.
Nick Mathewson [Thu, 24 Apr 2025 18:20:02 +0000 (14:20 -0400)]
Renumber OR_CONN_STATE_*
Nick Mathewson [Thu, 24 Apr 2025 18:19:31 +0000 (14:19 -0400)]
Rename "RENEGOTIATING state.
Nick Mathewson [Thu, 24 Apr 2025 18:06:12 +0000 (14:06 -0400)]
Completely remove support for the v2 link handshake
The v2 link handshake was one of the silliest things we ever did:
in an attempt to avoid sending our funny-looking certs back and forth,
we would first negotiate with a dummy set of certs and ciphers,
and then renegotiate with the ciphersuites we _really_ wanted.
We removed client-side support for this handshake back in
0.2.8.1-alpha, with ticket 11150.
Nick Mathewson [Thu, 24 Apr 2025 17:18:32 +0000 (13:18 -0400)]
Remove server support for the v1 link handshake.
In the v1 handshake we would send two very specialized certificates.
We'd identify that the client wanted to use this handshake by
the ciphers that it sent, or didn't sent.
We already removed client-side support for the v1 link handshake
back in 0.2.8.1-alpha, with ticket 11150.
David Goulet [Thu, 24 Apr 2025 13:22:48 +0000 (13:22 +0000)]
Merge branch 'man-safelogging' into 'main'
remove tiny ambiguity in man page for SafeLogging
See merge request tpo/core/tor!882
Roger Dingledine [Wed, 23 Apr 2025 19:49:55 +0000 (15:49 -0400)]
remove tiny ambiguity in man page for SafeLogging
David Goulet [Wed, 23 Apr 2025 18:35:27 +0000 (14:35 -0400)]
Merge branch 'maint-0.4.8'
Nick Mathewson [Wed, 23 Apr 2025 18:11:39 +0000 (14:11 -0400)]
Promote "list of supported groups" message to notice.
I have a feeling that this might help diagnosing
any other problems similar to #41058.
Nick Mathewson [Wed, 23 Apr 2025 18:10:43 +0000 (14:10 -0400)]
Only try more complex OpenSSL group list syntax with OpenSSL 3.5.
Closes #41058.
David Goulet [Wed, 23 Apr 2025 17:54:03 +0000 (13:54 -0400)]
typo: Fix unfinished HTML tag in comment
Signed-off-by: David Goulet <dgoulet@torproject.org>
David Goulet [Wed, 23 Apr 2025 15:00:53 +0000 (11:00 -0400)]
Merge branch 'maint-0.4.8'
Nick Mathewson [Wed, 23 Apr 2025 13:13:04 +0000 (09:13 -0400)]
TLS: When possible, enable ML-KEM768.
Closes ticket 41041.
Nick Mathewson [Wed, 23 Apr 2025 12:46:17 +0000 (08:46 -0400)]
Correctly detect error from SSL_CTX_set1_groups_list.
Previously our code was checking for '< 0', but the error return value for
this function _is_ zero.
Nick Mathewson [Wed, 23 Apr 2025 12:38:05 +0000 (08:38 -0400)]
Remove TOR_TLS_USE_ECDHE_P* flags.
They have been unused since 0.3.1.1-alpha, when we removed the
TLSECGroups option.
Sebastian Hahn [Thu, 1 Feb 2024 18:45:04 +0000 (19:45 +0100)]
Make two 1-bit fields unsigned
This should be a completely harmless warning as we only check whether
the fields are true or false.
Closes #40911.
(Backported by nickm so that I can compile 0.4.8 without warnings.)
David Goulet [Wed, 16 Apr 2025 14:49:35 +0000 (10:49 -0400)]
ci: Remove 047 from CI builds and put in 049
Signed-off-by: David Goulet <dgoulet@torproject.org>
Tor CI Release [Wed, 2 Apr 2025 14:09:56 +0000 (14:09 +0000)]
version: Bump version to 0.4.9.2-alpha-dev
Tor CI Release [Wed, 2 Apr 2025 13:50:59 +0000 (13:50 +0000)]
version: Bump version to 0.4.9.2-alpha
Tor CI Release [Wed, 2 Apr 2025 13:50:59 +0000 (13:50 +0000)]
release: ChangeLog for 0.4.9.2-alpha
David Goulet [Tue, 1 Apr 2025 12:45:37 +0000 (12:45 +0000)]
Merge branch 'dont-redefine-o_nofollow' into 'main'
Don't redefine O_NOFOLLOW.
See merge request tpo/core/tor!877
Collin Funk [Tue, 1 Apr 2025 04:57:33 +0000 (21:57 -0700)]
Don't redefine O_NOFOLLOW.
David Goulet [Mon, 31 Mar 2025 17:32:28 +0000 (13:32 -0400)]
Merge branch 'maint-0.4.8'
David Goulet [Mon, 31 Mar 2025 17:31:07 +0000 (17:31 +0000)]
Merge branch 'happy-families-ux' into 'main'
Improved UX for happy families based on relay op requests
Closes #41033
See merge request tpo/core/tor!875
David Goulet [Mon, 31 Mar 2025 17:25:28 +0000 (17:25 +0000)]
Merge branch 'ahf/049-ci-i386' into 'main'
Use bullseye on main for i386 for now.
See merge request tpo/core/tor!876
Alexander Hansen Færøy [Mon, 31 Mar 2025 14:39:04 +0000 (16:39 +0200)]
Use bullseye on main for i386 for now.
Waldemar Zimpel [Thu, 27 Mar 2025 22:15:05 +0000 (23:15 +0100)]
Fix: Crash on SIGSEGV if at least one worker thread cannot be launched
Perform a clean shutdown in case worker threads cannot be lauched.
David Goulet [Thu, 27 Mar 2025 19:56:13 +0000 (15:56 -0400)]
Merge branch 'maint-0.4.8'
David Goulet [Thu, 27 Mar 2025 19:56:02 +0000 (15:56 -0400)]
Merge branch 'tor-gitlab/mr/874' into maint-0.4.8
Nick Mathewson [Thu, 27 Mar 2025 19:13:16 +0000 (15:13 -0400)]
Clarify family ID key file names
Nick Mathewson [Thu, 27 Mar 2025 19:11:53 +0000 (15:11 -0400)]
New 'FamilyId *' to say "use all the family IDs you find."
Nick Mathewson [Thu, 27 Mar 2025 18:41:18 +0000 (14:41 -0400)]
Allow searching for family keys in a FamilyKeyDirectory
David Goulet [Thu, 27 Mar 2025 17:30:19 +0000 (13:30 -0400)]
changes: Add file for MR 839
Signed-off-by: David Goulet <dgoulet@torproject.org>
David Goulet [Thu, 27 Mar 2025 17:08:06 +0000 (17:08 +0000)]
Merge branch 'empty-dns' into 'main'
Handle empty DNS reply without error as NOERROR
Closes #40248
See merge request tpo/core/tor!839
David Goulet [Thu, 27 Mar 2025 15:21:30 +0000 (11:21 -0400)]
changes: Add file for MR 835
Signed-off-by: David Goulet <dgoulet@torproject.org>
David Goulet [Thu, 27 Mar 2025 15:20:07 +0000 (11:20 -0400)]
Merge branch 'tor-gitlab/mr/835'
David Goulet [Thu, 27 Mar 2025 14:51:16 +0000 (14:51 +0000)]
Merge branch 'fix/bw-cache-spikes' into 'main'
Fix: bw cache entry spikes (Issue: #31524)
See merge request tpo/core/tor!826
excurso [Thu, 27 Mar 2025 14:51:16 +0000 (14:51 +0000)]
Fix: bw cache entry spikes (Issue: #31524)
David Goulet [Thu, 27 Mar 2025 14:29:11 +0000 (14:29 +0000)]
Merge branch 'fix/memleaks-cpuworker' into 'maint-0.4.8'
Re: Coverity report Oct 31st, 2024 (Issue #40991)
See merge request tpo/core/tor!844
excurso [Thu, 27 Mar 2025 14:29:11 +0000 (14:29 +0000)]
Re: Coverity report Oct 31st, 2024 (Issue #40991)
David Goulet [Thu, 27 Mar 2025 12:49:40 +0000 (08:49 -0400)]
conflux: Avoid non fatal assert in CIRCUIT_IS_CONFLUX()
In the circuit_about_to_free(), we clear the circ->conflux object and then we
end up trying to emit an event on the control port which calls
CIRCUIT_IS_CONFLUX() and non fatal assert on the false branch.
Fixes #41037
Signed-off-by: David Goulet <dgoulet@torproject.org>
Alexander Hansen Færøy [Wed, 26 Mar 2025 18:50:07 +0000 (18:50 +0000)]
Merge branch 'remove-tlssecrets-tests' into 'main'
Remove TLSSecrets tests
See merge request tpo/core/tor!872
David Goulet [Wed, 26 Mar 2025 18:09:15 +0000 (14:09 -0400)]
Merge branch 'maint-0.4.8'
David Goulet [Wed, 26 Mar 2025 18:03:45 +0000 (18:03 +0000)]
Merge branch 'bug40802' into 'main'
resolve scary vanguard-related log msgs on dir auths
See merge request tpo/core/tor!873
Roger Dingledine [Fri, 8 Sep 2023 00:32:57 +0000 (20:32 -0400)]
resolve scary vanguard-related log msgs on dir auths
After we added layer-two vanguards, directory authorities wouldn't
think any of their vanguards were suitable for circuits, leading
to a "Failed to find node for hop #2 of our path. Discarding
this circuit." log message once per second from startup until
they made a fresh consensus. Now they look to their existing
consensus on startup, letting them build circuits properly from
the beginning.
Fixes bug 40802; bugfix on 0.4.7.1-alpha.
Alex Xu (Hello71) [Tue, 25 Mar 2025 23:46:43 +0000 (19:46 -0400)]
Remove TLSSecrets tests
These would fail if anybody actually still used OpenSSL 1.0, but in any case
there's no need to leave them around.
Follow-up from https://gitlab.torproject.org/tpo/core/tor/-/merge_requests/862#note_3178084.
Nick Mathewson [Tue, 25 Mar 2025 19:13:31 +0000 (15:13 -0400)]
Require FlowCtrl=1 (authenticated sendmes) for clients
This will cause clients before 0.4.1.1-alpha to shut down.
Part of #40836.
Nick Mathewson [Tue, 25 Mar 2025 19:06:12 +0000 (15:06 -0400)]
protover: Vote for additional protocols to be required/recommended
Note that the changes here will require all relays
to be 0.4.7.4-alpha or later, which is lower than
our current lowest-supported relay version.
Part of #40836.
David Goulet [Tue, 25 Mar 2025 17:06:24 +0000 (13:06 -0400)]
Merge branch 'maint-0.4.8'
Roger Dingledine [Tue, 25 Mar 2025 15:22:24 +0000 (11:22 -0400)]
fix two comment typos from 0.4.8.15
David Goulet [Mon, 24 Mar 2025 17:09:15 +0000 (17:09 +0000)]
Merge branch 'openssl-dynamic-linking-warnings' into 'main'
Only include custom OpenSSL ABI checks for OpenSSL 1.1
See merge request tpo/core/tor!827
David Goulet [Mon, 24 Mar 2025 16:52:34 +0000 (12:52 -0400)]
Merge branch 'maint-0.4.8'
Tor CI Release [Mon, 24 Mar 2025 15:25:59 +0000 (15:25 +0000)]
version: Bump version to 0.4.8.16-dev
David Goulet [Mon, 24 Mar 2025 15:23:06 +0000 (11:23 -0400)]
Merge branch 'maint-0.4.8'
Tor CI Release [Mon, 24 Mar 2025 15:11:11 +0000 (15:11 +0000)]
version: Bump version to 0.4.8.16
David Goulet [Mon, 24 Mar 2025 15:16:19 +0000 (11:16 -0400)]
Merge branch 'maint-0.4.8'
Tor CI Release [Mon, 24 Mar 2025 15:09:47 +0000 (15:09 +0000)]
Update geoip files to match ipfire location db, 2025/03/24.
David Goulet [Mon, 24 Mar 2025 14:39:14 +0000 (10:39 -0400)]
Merge branch 'maint-0.4.8'
David Goulet [Mon, 24 Mar 2025 13:09:38 +0000 (09:09 -0400)]
dirauth: Fix typo in flag relay assignment token
Unfortunately, we wanted to be able to control the Guard flag here but the
token used mentionned "exit" instead.
Oh well, s*** happens :).
Fixes #41035
Signed-off-by: David Goulet <dgoulet@torproject.org>
Alexander Hansen Færøy [Thu, 20 Mar 2025 16:01:29 +0000 (16:01 +0000)]
Merge branch 'bug41034' into 'main'
Avoid memory leak on unexpected family ID
See merge request tpo/core/tor!868
Nick Mathewson [Thu, 20 Mar 2025 15:28:28 +0000 (11:28 -0400)]
Avoid memory leak on unexpected family ID
Fixes bug #41034; bug not in any released tor.
David Goulet [Thu, 20 Mar 2025 15:22:22 +0000 (11:22 -0400)]
Merge branch 'maint-0.4.8'
Tor CI Release [Thu, 20 Mar 2025 15:06:00 +0000 (15:06 +0000)]
version: Bump version to 0.4.8.15-dev
David Goulet [Thu, 20 Mar 2025 14:55:20 +0000 (10:55 -0400)]
Merge branch 'maint-0.4.8'
Tor CI Release [Thu, 20 Mar 2025 14:43:55 +0000 (14:43 +0000)]
version: Bump version to 0.4.8.15
David Goulet [Thu, 20 Mar 2025 14:47:34 +0000 (10:47 -0400)]
Merge branch 'maint-0.4.8'
Tor CI Release [Thu, 20 Mar 2025 14:40:50 +0000 (14:40 +0000)]
fallbackdir: Update list generated on March 20, 2025
Tor CI Release [Thu, 20 Mar 2025 14:39:57 +0000 (14:39 +0000)]
Update geoip files to match ipfire location db, 2025/03/20.
David Goulet [Thu, 20 Mar 2025 14:02:20 +0000 (10:02 -0400)]
test: Fix unit tests breakage coming from maint-0.4.8
Signed-off-by: David Goulet <dgoulet@torproject.org>
David Goulet [Thu, 20 Mar 2025 13:53:16 +0000 (09:53 -0400)]
Merge branch 'maint-0.4.8'
Mike Perry [Wed, 19 Mar 2025 00:05:43 +0000 (00:05 +0000)]
Bug 41023 changes file
David Goulet [Tue, 11 Mar 2025 16:00:22 +0000 (12:00 -0400)]
hs: Never pick a MiddleOnly node for HS circuit purposes
Related to #41023
Signed-off-by: David Goulet <dgoulet@torproject.org>
David Goulet [Tue, 11 Mar 2025 14:54:51 +0000 (10:54 -0400)]
hs: Remove HSv3 rendezvous circuit flag used for node selection
This was put in when HSv2 and v3 were co-existing. Now, the network requires
HSRend=2 which is v3 by default.
This is a simple cleanup of an internal flag used to identify a launch of a
RPv3 circuit.
Related to #41023
Signed-off-by: David Goulet <dgoulet@torproject.org>
Mike Perry [Thu, 13 Mar 2025 20:00:03 +0000 (20:00 +0000)]
Provide dirauth ability to strip specific flags.
David Goulet [Wed, 19 Mar 2025 18:42:11 +0000 (14:42 -0400)]
Merge branch 'maint-0.4.8'
Alexander Hansen Færøy [Tue, 18 Mar 2025 15:23:00 +0000 (16:23 +0100)]
CI: Add changes file related to 41029.
Alexander Hansen Færøy [Tue, 18 Mar 2025 13:47:53 +0000 (14:47 +0100)]
CI: Enable venv before running ci-driver.sh for Chutney.
Alexander Hansen Færøy [Tue, 18 Mar 2025 13:29:11 +0000 (14:29 +0100)]
CI: Install python3-venv.
Alexander Hansen Færøy [Tue, 18 Mar 2025 13:25:41 +0000 (14:25 +0100)]
CI: Use local pip instead of python3-pip.
Alexander Hansen Færøy [Tue, 18 Mar 2025 13:22:35 +0000 (14:22 +0100)]
CI: Disable redundant-decls warnings for NSS in crypto_nss_mgt.c.
Alexander Hansen Færøy [Tue, 18 Mar 2025 12:37:39 +0000 (13:37 +0100)]
CI: Install libclang-rt-dev when build with hardening enabled.