aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | deps: add percent_encoding and remove serdeNihal2026-02-162-1/+2
| | | |
| * | | tor-chanmgr: improve ProxyProtocol documentationNihal2026-02-161-42/+159
| | | |
| * | | tor-chanmgr: remove SocketAddr and improve errorNihal2026-02-162-22/+15
| | | |
| * | | tor-socksproto: remove serdeNihal2026-02-162-4/+11
| | | |
| * | | docs: add outbound proxyNihal2026-02-161-0/+21
| | | |
| * | | tor-chanmgr: add URI-style parsing for ProxyProtocol outbound_proxy configNihal2026-02-164-10/+264
| | | |
| * | | tor-chanmgr: integrate outbound proxy into DefaultTransportNihal2026-02-163-15/+41
| | | |
| * | | tor-chanmgr: add From<ProxyError> for io::Error conversionNihal2026-02-161-0/+6
| | | |
| * | | tor-chanmgr: add ProxyProtocol config type for outbound proxyNihal2026-02-161-0/+30
| | | |
| * | | tor-socksproto: add Serialize/Deserialize derives for SocksVersion and SocksAuthNihal2026-02-162-2/+4
| | | |
* | | | Merge branch 'circ-sync-view-streams' into 'main'gabi-2502026-02-1611-118/+46
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | proto: Replace circuit-scoped `CircSyncView` with per-hop alternative Closes #2351 See merge request tpo/core/arti!3680
| * | | | proto: Remove unfinished sentence from docsGabriela Moldovan2026-02-161-2/+0
| | | | |
| * | | | proto: Update IncomingStreamRequestFilter docsGabriela Moldovan2026-02-161-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | The `CircHopSyncView` is now the view of a hop, not of the whole circuit.
| * | | | proto: Rename CircSyncView to CircHopSyncView (fmt)Gabriela Moldovan2026-02-161-1/+1
| | | | |
| * | | | proto: Rename CircSyncView to CircHopSyncViewGabriela Moldovan2026-02-168-24/+16
| | | | | | | | | | | | | | | | | | | | And update the docs
| * | | | proto: Remove unused n_open_streams() functionsGabriela Moldovan2026-02-161-17/+0
| | | | |
| * | | | proto: Use CircSyncView in the new circuit reactorGabriela Moldovan2026-02-161-13/+7
| | | | | | | | | | | | | | | | | | | | | | | | | Now that CircSyncView no longer needs to know the total number of streams, we can use it in the new per-hop stream reactor design.
| * | | | proto: Replace circuit-scoped n_open_streams() with per-hop alternativeGabriela Moldovan2026-02-162-9/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `IncomingStreamRequestFilter`s, and `CircSyncView`s, by extension, are used both by old relay implementation and the new one for implementing an out-of-reactor way of deciding how to handle an incoming stream. In the new circuit reactor design, we have a separate stream reactor for each hop. Upon receiving an incoming stream, the stream reactor will need to build one of these `CircSyncView` objects, and then pass it to an externally-provided `IncomingStreamRequestFilter`. Before this change, `CircSyncView::n_open_streams()` returned the total number of open streams, which wouldn't have worked with the new reactor design, because the per-hop stream reactor doesn't have a global view of all the hops, so its `CircSyncView` can't return the total number of streams (at least not without message passing, or sharing state with the other stream reactors).
| * | | | proto: Replace CircSyncView with previously client-only CircSyncViewGabriela Moldovan2026-02-165-72/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note: this commit only contains the removal of the old `CircSyncView`, and it of course doens't compile. A future commit will replace the removed file with the `syncview.rs` from the client module. This change is split over two commits because it makes reviewing easier (`git mv`ing the new file over the old results in a confusing diff, because `git` refuses to show it as a move).
| * | | | proto: Adjust visibility in client::reactor::CircSyncViewGabriela Moldovan2026-02-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | This is in preparation for replacing the top-level `CircSyncView` with it.
| * | | | proto: Use absolute path in CircHopList importGabriela Moldovan2026-02-161-1/+1
| | | | | | | | | | | | | | | | | | | | This file will be moved to the top-level `circuit` module soon.
| * | | | proto: Rename ClientCircSyncView to CircSyncViewGabriela Moldovan2026-02-164-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | | This will soon replace `CircSyncView` wholesale. The preliminary renaming will make the future diffs easier to review.
| * | | | proto: Add an accessor for the CircHopOutbound of a CircHopGabriela Moldovan2026-02-161-0/+5
| | |/ / | |/| | | | | | | | | | This will soon be needed for building a `CircSyncView`.
* | | | Merge branch 'msrv-1.89' into 'main'Nick Mathewson2026-02-16138-77/+145
|\ \ \ \ | |/ / / |/| | | | | | | | | | | Bump MSRV to 1.89 See merge request tpo/core/arti!3684
| * | | arti-bench: Use is_multiple_of() instead of manual checkGabriela Moldovan2026-02-161-1/+1
| | | | | | | | | | | | | | | | As suggested by clippy
| * | | proto: Use is_multiple_of() as suggested by clippyGabriela Moldovan2026-02-163-3/+3
| | | |
| * | | hashx: Use .is_multiple_of() as recommended by clippyGabriela Moldovan2026-02-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | I'm applying the clippy suggestion, even though in this case, using `is_multiple_of()` instead of `%` is a bit questionable IMO, because the `% 3` operation can never panic.
| * | | arti-client: Allow collapsible_if in examplesGabriela Moldovan2026-02-161-0/+1
| | | |
| * | | Allow clippy::collapsible_if to triggerGabriela Moldovan2026-02-1667-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `clippy::collapsible_if` started triggering after bumping the MSRV to 1.88. Since this triggers from a lot of places, and since there even are a couple of instances where we explicitly allow `clippy::collapsible_ifs`, I've opened #2342 for deciding what to do about it.
| * | | Bump MSRV from 1.86 to 1.89Gabriela Moldovan2026-02-1666-66/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | As agreed at our last team meeting. See https://gitlab.torproject.org/tpo/core/arti/#minimum-supported-rust-version
| * | | Bump time to 0.3.47Gabriela Moldovan2026-02-166-6/+6
| |/ / | | | | | | | | | | | | | | | This enables us to un-ignore RUSTSEC-2026-0009. See #2341 for analysis of impact.
* | | Merge branch 'relay-own-cert' into 'main'David Goulet2026-02-164-7/+26
|\ \ \ | | | | | | | | | | | | | | | | relay: Pass our TLS cert to the responder verify process See merge request tpo/core/arti!3665
| * | | relay: Pass our TLS cert to the responder verify processDavid Goulet2026-02-124-7/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the responder to build the authentication data, it needs its own certificate of the TLS handshake that it is responding to (as a TLS server). This resolves an important TODO(relay) in the code. Signed-off-by: David Goulet <[email protected]>
* | | | Merge branch 'chan-target-addr' into 'main'David Goulet2026-02-162-2/+33
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | tor-chanmgr: Add additional `get_or_launch()` tests and update doc comment Closes #2344 See merge request tpo/core/arti!3676
| * | | tor-chanmgr: add doc comment to `ChanMgr::get_or_launch()`Steven Engler2026-02-121-0/+6
| | | |
| * | | tor-chanmgr: add `get_or_launch()` tests using different addrsSteven Engler2026-02-121-2/+27
| | | | | | | | | | | | | | | | | | | | When there are two channel requests with the same identities and different socket addresses, we return the same channel.
* | | | arti: Use ErrorSources in extract_proto_errRobert Bartlensky2026-02-141-12/+5
| | | |
* | | | tor-basic-utils: Add utility to iterate over error sourcesRobert Bartlensky2026-02-142-0/+113
| | | |
* | | | Merge branch 'ed25519-from' into 'main'wesleyac2026-02-121-0/+42
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | tor-llcrypto: Add `Ed25519Identity::from_base64()` See merge request tpo/core/arti!3667
| * | | | tor-llcrypto: add `Ed25519Identity::from_base64()`Steven Engler2026-02-101-0/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is intended to be analogous to `RsaIdentity::from_hex()`. I've found myself wanting this a few times, and it makes it easy to grab a `master-key-ed25519` from the consensus and paste it into the code without needing to do extra conversions.
* | | | | Merge branch 'nonblocking-rpc-part1' into 'main'Nick Mathewson2026-02-1215-337/+900
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | RPC: Replace backend with nonblocking IO See merge request tpo/core/arti!3644
| * | | | | rpc: re-run cbindgen to capture new warnings.Nick Mathewson2026-02-121-0/+2
| | | | | |
| * | | | | rpc nb: Fix documentation link.Nick Mathewson2026-02-121-1/+1
| | | | | |
| * | | | | rpc nb: Capitalize a letterNick Mathewson2026-02-121-1/+1
| | | | | |
| * | | | | rpc: Use vec::drain.Nick Mathewson2026-02-121-3/+4
| | | | | |
| * | | | | rpc: Flush after write.Nick Mathewson2026-02-121-1/+4
| | | | | |
| * | | | | rpc: Handle eintr in NonblockingStream.Nick Mathewson2026-02-121-13/+18
| | | | | |
| * | | | | rpc: Add "Io Safety" documentation.Nick Mathewson2026-02-121-2/+31
| | | | | |
| * | | | | rpc nb: Documentation improvements from diziet.Nick Mathewson2026-02-121-5/+27
| | | | | |
| * | | | | rpc: Clean up pub items in nb_stream.Nick Mathewson2026-02-044-16/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (We don't need as many of these to be public as I had originally thought.)