summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-08-23version: Bump to 0.4.9.0-alpha-devtor-0.4.9.0-alpha-devDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-23scripts: Add 048 maint branch to our helper scriptsDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-23version: Bump version to 0.4.8.4tor-0.4.8.4Tor CI Release
2023-08-23ChangeLog and ReleaseNotes for 0.4.8.4 stableDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-23fallbackdir: Update list generated on August 23, 2023Tor CI Release
2023-08-23Update geoip files to match ipfire location db, 2023/08/23.Tor CI Release
2023-08-22Fix compilation errors for FreeBSDDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-22changes: Add changes file for ticket 40833David Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-22Merge remote-tracking branch 'mbeth-private/ticket40833_mr'David Goulet
2023-08-22changes: Add changes file for ticket 40821David Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-22Merge remote-tracking branch 'mbeth-private/ticket40821_mr'David Goulet
2023-08-15Merge branch 'rust_ci' into 'main'David Goulet
Rust and CI fixes See merge request tpo/core/tor!742
2023-08-15CI: Diagnostic for failure in test_rebind cleanupMicah Elizabeth Scott
I saw this test fail intermittently due to what seemed like a filesystem race in docker? The cleanup task was failing with a 'directory not empty' error, despite trying to do a recursive 'rm'. This patch adds an 'ls' to the same directory, hoping the output might be useful to diagnose future intermittent failures.
2023-08-15CI: Add Rust tests and clippyMicah Elizabeth Scott
This adds a new "rust-latest" CI target that runs tests and clippy for everything in the workspace. It's a subset of the equivalent on Arti.
2023-08-15cargo: Move lockfile to root and updateMicah Elizabeth Scott
Change 3f66ff9b000d1fbaae106e58269fe2aa306bc453 added geoip-db-tool to the main workspace, so it's no longer using a local lockfile. Move its lock to the crate root, remove from gitignore, and update it. (We could also choose to not keep the lockfiles checked in, but it seems useful to have them in our test and maintenance tooling here.)
2023-08-15tor-c-equix: Fix clippy warningMicah Elizabeth Scott
Clippy found a transmute that could have been a reborrow.
2023-08-15geoip-db-tool: Fix clippy warningsMicah Elizabeth Scott
This fixes warnings found by clippy 0.1.71 on Rust 1.71.1 Tested this by doing a geoip update without committing changes.
2023-08-15Merge branch 'maint-0.4.7'David Goulet
2023-08-15Merge branch 'bug40834' into 'main'David Goulet
Revert "Nullify on_circuit if last conflux leg" See merge request tpo/core/tor!744
2023-08-15Changes file for bug40834Mike Perry
2023-08-15Bug 40834: Remove assert and add logs to track no-leg caseMike Perry
2023-08-15Revert "Nullify on_circuit if last conflux leg"Mike Perry
This reverts commit 5487476fd919703b55cb1f1544d575224c9b685e.
2023-08-14Merge branch 'main' into 'main'David Goulet
Clean up torify See merge request tpo/core/tor!740
2023-08-14zstd: Check errors right affer compressing/decompressingDavid Goulet
Considering a compression bomb before looking for errors led to false negative log warnings. Instead, it is possible the work failed for whatever reasons which is not indicative of a compression bomb. Fixes #40739 Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-14Merge branch 'hashx_sizet_mr' into 'main'David Goulet
hashx: Fix a few more compiler warnings See merge request tpo/core/tor!739
2023-08-11test_dos: Fixes for uninitialized stack memoryMicah Elizabeth Scott
This was causing CI failures that didn't reproduce on my local machine. The DoS subsystem now has a new assert() which triggers a BUG on some nonzero memory contents (or_conn->tracked_for_dos_mitigation), and uninitialized stack memory might be nonzero.
2023-08-11Extend DoS protection to IP addresses with known relaysMicah Elizabeth Scott
This exemption used to be helpful in keeping exit relays from tripping the DoS detection subsystem and losing Tor connectivity. Now exit relays block re-entry into the network (tor issue #2667) so it's no longer needed. We'd like to re-enable protection on these addresses to avoid giving attackers a way around our DoS mitigations.
2023-08-11hashx: Fix rare compiler output overflow on aarch64Micah Elizabeth Scott
This is a fix for a very rare buffer overflow in hashx, specific to the dynamic compiler on aarch64 platforms. In practice this issue is extremely unlikely to hit randomly, and it's only been seen in unit tests that supply unusual mock PRNG output to the program generator. My best attempt at estimating the probability of hitting the overflow randomly is about 10^-23. Crafting an input with the intent to overflow can be done only as fast as an exhaustive search, so long as Blake2B is unbroken. The root cause is that hashx writes assembly code without any length checks, and it uses an estimated size rather than an absolute maximum size to allocate the buffer for compiled code. Some instructions are much longer than others, especially on aarch64. The length of the overflow is nearly 300 bytes in the worst synthetic test cases I've developed so far. Overflow occurs during hashx_make(), and the subsequent hashx_exec() will always SIGSEGV as the written code crosses outside the region that's been marked executable. In typical use, hashx_exec() is called immediately after hashx_make(). This fix increases the buffer size from 1 page to 2 pages on aarch64, adds an analysis of the compiled code size, and adds runtime checks so we can gracefully fail on overflow. It also adds a unit test (written in Rust) that includes a PRNG sequence exercising the overflow. Without this patch the unit test shows a SIGSEGV on aarch64, with this patch it runs successfully and matches interpreter output. Signed-off-by: Micah Elizabeth Scott <beth@torproject.org>
2023-08-09Extend DoS protection to partially-open channelsMicah Elizabeth Scott
tor only marks a channel as 'open' once the TLS and OR handshakes have both completed, and normal "client" (ORPort) DoS protection is not enabled until the channel becomes open. This patch adds an additional earlier initialization path for DoS protection on incoming TLS connections. This leaves the existing dos_new_client_conn() call sites intact, but adds a guard against multiple-initialization using the existing tracked_for_dos_mitigation flag. Other types of channels shouldn't be affected by this patch.
2023-08-09Clean up torifyнаб
Replace pathfind() which tries to parse $PATH manually with command -v. exec is always fatal, regardless of if it managed to execute.
2023-08-07hashx: Fix a few more compiler warningsMicah Elizabeth Scott
Fix a couple cases where size_t values were being confused with int. Signed-off-by: Micah Elizabeth Scott <beth@torproject.org>
2023-08-04version: Bump version to 0.4.8.3-rc-devTor CI Release
2023-08-04version: Bump version to 0.4.8.3-rctor-0.4.8.3-rcTor CI Release
2023-08-04release: ChangeLog update for 0.4.8.3-rcDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-04fallbackdir: Update list generated on August 04, 2023Tor CI Release
2023-08-04Update geoip files to match ipfire location db, 2023/08/04.Tor CI Release
2023-08-04geoip: Fix cargo target directoryDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-04cargo: Add geoip db tool to top level workspaceDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-02ci: Move tag to the x86-64 templateDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-02ci: Tag physical our i386 minimal jobDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-02Merge branch 'remove-conflux-bug-log' into 'main'David Goulet
relay: Remove logging for a bug. It triggers a BUG() later See merge request tpo/core/tor!738
2023-08-02relay: Remove logging for a bug. It triggers a BUG() laterDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-08-01Merge branch 'cargo_hashx_rng' into 'main'David Goulet
hashx: Rust hook for inspecting and modifying the random number stream See merge request tpo/core/tor!734
2023-08-01Merge branch 'bug40827' into 'main'David Goulet
Fix assert crash on relay-side due to on_circuit backpointer See merge request tpo/core/tor!737
2023-08-01Changes file for bug 40827Mike Perry
2023-08-01Bug 40827: Add additional logs and checks for 0-leg conflux caseMike Perry
2023-08-01Nullify on_circuit if last conflux legDavid Goulet
Signed-off-by: David Goulet <dgoulet@torproject.org>
2023-07-31Merge branch 'bug40828' into 'main'David Goulet
Bug40828 See merge request tpo/core/tor!736
2023-07-31Changes file for bug40828Mike Perry
2023-07-31Bug 40828: Add more log scrubbing to protocol warningsMike Perry