summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | tor-dirserver: Set versions to 0.34.0Clara Engler2025-09-042-3/+3
| | | | | | |
| * | | | | | tor-dirserver: Add TODOs for unresolved discussionsClara Engler2025-09-041-0/+5
| | | | | | |
| * | | | | | tor-dirserver: Remove unused error membersClara Engler2025-09-041-12/+0
| | | | | | |
| * | | | | | tor-dirmirror: Schema x-ref for `unsigned_sha3_256`Clara Engler2025-09-041-0/+2
| | | | | | |
| * | | | | | tor-dirserver: Add missing sha1 length checkClara Engler2025-09-041-0/+1
| | | | | | |
| * | | | | | tor-dirserver: Better wording for "thread poisoned"Clara Engler2025-09-041-2/+2
| | | | | | |
| * | | | | | tor-dirserver: Ensure uppercase hex in schemaClara Engler2025-09-041-0/+8
| | | | | | |
| * | | | | | tor-dirserver: Use `internal!` macro for errorClara Engler2025-09-041-7/+3
| | | | | | |
| * | | | | | tor-dirserver Use `tor_error::Bug`Clara Engler2025-09-044-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit uses `tor_error::Bug` for indicating thread poisoning.
| * | | | | | tor-dirserver: Use `expect` instead of `unwrap`Clara Engler2025-09-041-11/+6
| | | | | | |
| * | | | | | tor-dirserver: TODO about endpoint error handlingClara Engler2025-09-041-0/+3
| | | | | | |
| * | | | | | tor-dirserver: Rename `cb` to `endpoint_fn`Clara Engler2025-09-041-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit renames `cb` to `endpoint_fn` everywhere, including internal implementations.
| * | | | | | tor-dirmirror: Add several "TODO DIRMIRROR" linesClara Engler2025-09-044-1/+17
| | | | | | |
| * | | | | | tor-dirserver: Enable `PRAGMA foreign_keys=ON`Clara Engler2025-09-041-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit enables `PRAGMA foreign_keys=ON;` for every connection by adding an appropriate statement to `schema::prepare_db`.
| * | | | | | tor-dirserver: Use strum for `ContentEncoding`Clara Engler2025-09-043-33/+44
| | | | | | |
| * | | | | | tor-dirserver: Document hex case in schemaClara Engler2025-09-041-1/+1
| | | | | | |
| * | | | | | tor-dirserver: Remove `ON DELETE CASCADE` for nowClara Engler2025-09-041-6/+6
| | | | | | |
| * | | | | | tor-dirserver: `Unrecognized` to `Incompatible`Clara Engler2025-09-042-2/+2
| | | | | | |
| * | | | | | tor-dirserver: Fix clippy warnings in testsClara Engler2025-09-042-3/+31
| | | | | | |
| * | | | | | tor-dirserver: Make more err fields `pub(crate)`Clara Engler2025-09-041-2/+2
| | | | | | |
| * | | | | | tor-dirserver: Use transactions in endpointsClara Engler2025-09-042-264/+258
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit refactors a large part of the HTTP module, namely it refactors the `Callback` type to a new type called `EndpointFn` which now works in a transaction based approach and no longer gives access to the `StoreCache`. The type itself is also no longer a trait but a concrete type using `fn`. Another very notable change that became necessary during this commit was to make large parts of the codebase synchronous instead of async, namely because it is non-trivial to `Send` a `Transaction` created inside an async context to a synchronous function. Besides, this change has been deemed necessary for other reasons to. The refactoring to more synchronous code has lead to some interesting changes in `StoreCache` too, namely that in no longer uses async mutex, but a synchronous mutex instead.
| * | | | | | tor-dirserver: Add clippy checks and fix themClara Engler2025-09-045-18/+76
| | | | | | |
| * | | | | | tor-dirserver: Add http moduleClara Engler2025-09-045-3/+1266
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit implements the initial draft for the HTTP module. It is fairly complicated but well documented within the source code, please refer to that instead.
| * | | | | | tor-dirserver: Add schema moduleClara Engler2025-09-045-0/+345
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds the `schema.rs` module, which implements the database schema alongside some functions for initializing the database and obtaining the database schema version.
| * | | | | | tor-dirserver: Initial commitClara Engler2025-09-046-0/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit lays the initial groundwork for the `tor-dirserver` crate, a crate that shall implement functionality for dirmirros and dirauths. For now, the current crate consists of three bare bone modules: * lib.rs * err.rs * mirror.rs All of which contain mostly boilerplate code for now
* | | | | | | Merge branch 'conflux-p112' into 'main'gabi-2502025-09-047-38/+173
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | proto: Add extra validation for conflux SWITCH Closes #2031 See merge request tpo/core/arti!3181
| * | | | | | proto: Add test ensuring consecutive SWITCHes trigger tunnel teardown.Gabriela Moldovan2025-09-041-0/+48
| | | | | | |
| * | | | | | proto: Only send the bad test cell on one of the circuit legs.Gabriela Moldovan2025-09-041-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes it clearer that the tunnel shutdown is triggered correctly (i.e. that it is enough for *one* of the legs to receive the bad SWITCH cell). This also updates a comment that wrongly suggests that the tunnel is only shut down if both legs get removed from the conflux set.
| * | | | | | proto: Pass the cc params as an argument to setup_good_conflux_tunnel.Gabriela Moldovan2025-09-041-12/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test code now creates the params (which enables it to build test cases that use various params). Resolves a TODO.
| * | | | | | proto: Add another test for SWITCH seqno validation.Gabriela Moldovan2025-09-041-8/+7
| | | | | | |
| * | | | | | proto: Update docs to clarify how we validate SWITCH seqnos.Gabriela Moldovan2025-09-041-8/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Also removes all the TODOs related to #2031 (which is now addressed).
| * | | | | | proto: Close tunnel if a leg receives consecutive SWITCH cells.Gabriela Moldovan2025-09-041-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #2031
| * | | | | | proto: Ensure the seqno of the first SWITCH doesn't exceed the init cwnd.Gabriela Moldovan2025-09-041-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This partially addresses #2031
| * | | | | | proto: Store the seqno of last cell delivered in the client conflux handler.Gabriela Moldovan2025-09-042-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will be needed for the SWITCH seqno validation logic. Part of #2031
| * | | | | | proto: Pass the cwnd params to the conflux message handler.Gabriela Moldovan2025-09-043-2/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These will be used for validating SWITCH cells. Part of #2031
| * | | | | | proto: Pass owned CongestionWindowParams to CongestionControl::new.Gabriela Moldovan2025-09-043-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We no longer need to clone `CongestionWindowParams` now that it implements `Copy`. Resolves a clippy warning.
| * | | | | | proto: Derive Copy for CongestionWindowParams.Gabriela Moldovan2025-09-041-1/+1
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | These will likely always just be a collection of integers (lightweight to copy).
* | | | | | Merge branch 'maybenot-triggers' into 'main'Nick Mathewson2025-09-0311-136/+384
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | Circuit padding: note when cells are sent and received See merge request tpo/core/arti!3222
| * | | | | Whoops; let chains _still_ aren't stable in 1.85.Nick Mathewson2025-09-031-2/+1
| | | | | |
| * | | | | padding: Fix compilation with padding disabled.Nick Mathewson2025-09-031-1/+16
| | | | | |
| * | | | | padding cleanup: use QueuedCellPaddingInfo one more place.Nick Mathewson2025-09-031-5/+3
| | | | | |
| * | | | | padding: Report when we have received padding or data.Nick Mathewson2025-09-023-1/+19
| | | | | | | | | | | | | | | | | | | | | | | | (This was so much easier than reporting on the send side.)
| * | | | | padding: Report when outbound cells are flushed.Nick Mathewson2025-09-022-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (This is what required us to stick a padding controller handle in each CircEnt, and what required us to accompany each queued cell with a QueuedPaddingCellInfo. Ouch!)
| * | | | | padding: Give CircEnt in a Channel a handle for the PaddingController.Nick Mathewson2025-09-027-99/+169
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This requires some annoying plumbing to make sure that the right types wind up in the right places.
| * | | | | proto: Turn CircEnt variants into struct-like format.Nick Mathewson2025-09-022-29/+72
| | | | | | | | | | | | | | | | | | | | | | | | (I'm about to add more fields.)
| * | | | | padding: Install a PaddingController in each circuit.Nick Mathewson2025-09-023-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | Also, use it to report that we have queued normal data.
| * | | | | padding: track which hop each queued cell is for.Nick Mathewson2025-09-026-31/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We'll need this so that we can tell the right padding machine(s) which of them just had a queue flush. This is not yet 100% done; the unfinished parts are marked with XXXXs.
* | | | | | Merge branch 'fix-congestion-signals' into 'main'opara2025-09-031-1/+3
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-proto: Fix bug in `congestion_signals` Closes #2128 See merge request tpo/core/arti!3223
| * | | | | tor-proto: fix bug in `congestion_signals`Steven Engler2025-09-031-1/+3
|/ / / / /
* | | | | Merge branch 'randomize-seeds' into 'main'Jim Newsome2025-09-038-16/+31
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | shadow tests: mitigate flakiness See merge request tpo/core/arti!3227