| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | | tor-proto: Remove a resolved XXX. | Gabriela Moldovan | 2025-05-06 | 1 | -4/+3 | |
| | | | ||||||
| * | | tor-proto: Try to dequeue ooo messages in circ reactor main loop. | Gabriela Moldovan | 2025-05-06 | 3 | -9/+59 | |
| | | | ||||||
| * | | tor-proto: Add reactor cmd for buffering out-of-order messages. | Gabriela Moldovan | 2025-05-06 | 4 | -6/+220 | |
| | | | ||||||
| * | | tor-proto: Split handle_relay_msg() into two functions. | Gabriela Moldovan | 2025-05-06 | 1 | -0/+12 | |
| | | | | | | | | | | | Soon `handle_in_order_relay_msg()` will be called from other places too, for handling deferred out-of-order conflux messages. | |||||
| * | | tor-proto: Add a CtrlMsg for linking circuits. | Gabriela Moldovan | 2025-05-06 | 2 | -5/+74 | |
| | | | ||||||
| * | | tor-proto: Support adding and linking circuits in ConfluxSet. | Gabriela Moldovan | 2025-05-06 | 3 | -4/+195 | |
| | | | ||||||
| * | | tor-proto: Add function for checking if a circuit has any open streams. | Gabriela Moldovan | 2025-05-06 | 1 | -0/+11 | |
| | | | ||||||
| * | | tor-proto: Add helper for checking if cmd counts towards conflux seqnos. | Gabriela Moldovan | 2025-05-06 | 1 | -0/+51 | |
| | | | | | | | | | This is a direct translation of C Tor's `conflux_should_multiplex()`. | |||||
| * | | tor-proto: Handle conflux cells in the reactor. | Gabriela Moldovan | 2025-05-06 | 1 | -0/+39 | |
| | | | ||||||
| * | | tor-proto: Add a TODO about adding a conflux MetaCellHandler. | Gabriela Moldovan | 2025-05-06 | 1 | -0/+5 | |
| | | | ||||||
| * | | tor-proto: Add Circuit function for beginning the conflux handshake. | Gabriela Moldovan | 2025-05-06 | 1 | -0/+29 | |
| | | | ||||||
| * | | tor-proto: Add a ConfluxMsgHandler to Circuit. | Gabriela Moldovan | 2025-05-06 | 3 | -0/+49 | |
| | | | ||||||
| * | | tor-proto: Add last_seq_delivered to ConfluxSet. | Gabriela Moldovan | 2025-05-06 | 1 | -0/+17 | |
| | | | ||||||
| * | | tor-proto: Add client-side conflux message handlers. | Gabriela Moldovan | 2025-05-06 | 5 | -0/+547 | |
| | | | ||||||
| * | | tor-proto: Add a reason to CircuitAction::RemoveLeg. | Gabriela Moldovan | 2025-05-06 | 2 | -5/+36 | |
| | | | | | | | | | | | | | | | The leg removal reason will be shared with the initiator of the conflux handshake (i.e. the sender of the `CtrlMsg` initiating the handshake), if the tunnel is a multi-path tunnel with conflux handshakes in progress. | |||||
| * | | tor-proto: Add conflux handshake state to reactor. | Gabriela Moldovan | 2025-05-06 | 1 | -0/+20 | |
| | | | | | | | | | | | | | | | The reactor will need to notify the conflux handshake initiator (the sender of the `CtrlMsg` that triggered the handshake) of conflux set readiness, so it needs to keep track of the status of the circuits it was asked to link. | |||||
| * | | tor-proto: Add error and channel types for conflux handshake outcome. | Gabriela Moldovan | 2025-05-06 | 2 | -0/+28 | |
| | | | | | | | | | | | These will be used for sending the conflux handshake outcome to the reactor user. | |||||
| * | | tor-proto: Pass a DynTimeProvider to the circuit reactor. | Gabriela Moldovan | 2025-05-06 | 3 | -2/+12 | |
| | | | | | | | | | | | We will need this to implement conflux handshake timeouts, and to get the current time for RTT calculations. | |||||
| * | | tor-proto: Add macro to dedupe error handling. | Gabriela Moldovan | 2025-05-06 | 1 | -9/+30 | |
| | | | ||||||
| * | | tor-proto: Store the DesiredUx inside ConfluxSet. | Gabriela Moldovan | 2025-05-06 | 1 | -1/+10 | |
| | | | ||||||
| * | | tor-proto: Store the join point of the tunnel in ConfluxSet. | Gabriela Moldovan | 2025-05-06 | 1 | -4/+32 | |
| | | | ||||||
| * | | tor-proto: Add Circuit::last_hop_num for getting the last HopNum. | Gabriela Moldovan | 2025-05-06 | 2 | -6/+13 | |
| | | | | | | | | | This will be soon needed in the `ConfluxSet` implementation too. | |||||
| * | | tor-proto: Store the V1Nonce of a conflux set in ConfluxSet. | Gabriela Moldovan | 2025-05-06 | 1 | -1/+10 | |
| | | | | | | | | | | | This will be shared by all circuits in the set, and will be used during the conflux handshake. | |||||
| * | | tor-proto: Make ConfluxSet::primary_id private. | Gabriela Moldovan | 2025-05-06 | 1 | -1/+1 | |
| | | | | | | | | | It doesn't actually need to be `pub(super)`. | |||||
| * | | tor-proto: Enable tor-cell/conflux is conflux is enabled. | Gabriela Moldovan | 2025-05-06 | 1 | -1/+1 | |
| | | | ||||||
| * | | release: Bump all unstable tor/arti crates to 0.30.0 | Wesley Aptekar-Cassels | 2025-05-01 | 2 | -20/+19 | |
| | | | | | | | | | | | | | | | | | ``` for crate in $(./maint/list_crates | rg '^(tor|arti-)'); do cargo set-version -p $crate 0.30.0 done ``` | |||||
| * | | Merge branch 'release-2025-04-update-semver' into 'main' | Nick Mathewson | 2025-04-30 | 1 | -0/+1 | |
| |\ \ | | | | | | | | | | | | | maint: Update semver.md files from semver-checks See merge request tpo/core/arti!2977 | |||||
| | * | | maint: Update semver.md files from semver-checks | Wesley Aptekar-Cassels | 2025-04-30 | 1 | -0/+1 | |
| | | | | ||||||
| * | | | chore: Run fixup-features. | Wesley Aptekar-Cassels | 2025-04-30 | 1 | -1/+1 | |
| |/ / | | | | | | | | | | | | | | | | | | | | | | | cargo run -p fixup-features -- --exclude examples/ --exclude maint/ Cargo.toml The following features in arti-ureq were manually added to full or marked non-additive: * rustls * native-tls * tokio * async-std | |||||
| * | | Update rand requirement to 0.9.1 | Nick Mathewson | 2025-04-29 | 1 | -1/+1 | |
| | | | | | | | | | | | (This is going to be a _requirement_, since rand 0.9.1 has a behavioral change from 0.9.0) | |||||
| * | | Run cargo update. | Wesley Aptekar-Cassels | 2025-04-29 | 1 | -1/+1 | |
| | | | | | | | | | | | I updated everything except rand, because the new version of rand interacts with #1903, thus requiring more care. | |||||
| * | | tor-proto: use RelayCellFormat rather than u8 in tests. | Nick Mathewson | 2025-04-29 | 1 | -14/+14 | |
| | | | | | | | | | (The u8 code was written before RelayCellFormat::V1 was introduced.) | |||||
| * | | Rename feature cgo => counter-galois-onion. | Nick Mathewson | 2025-04-29 | 2 | -5/+5 | |
| | | | ||||||
| * | | CGO: Fix authenticated-sendme tag handling. | Nick Mathewson | 2025-04-29 | 1 | -5/+20 | |
| | | | | | | | | | | | | | See discussion at torspec#328: it's important that our SENDME authentication tag always be taken based on the _encrypted_ cell. | |||||
| * | | CGO: Note another possible performance improvement. | Nick Mathewson | 2025-04-29 | 1 | -0/+3 | |
| | | | ||||||
| * | | proto: Implement and test CGO cryptography. | Nick Mathewson | 2025-04-29 | 4 | -13/+763 | |
| | | | | | | | | | | | | | | | | | This provides all the operations from proposal 359, along with the necessary integration and unit tests to make sure that they are behaving properly. Closes #1943 | |||||
| * | | proto: Implement UIV+, the wide-block RPRP used for CGO. | Nick Mathewson | 2025-04-29 | 2 | -1/+456 | |
| | | | ||||||
| * | | proto: Implement CGO functions ET and PRF | Nick Mathewson | 2025-04-29 | 4 | -4/+815 | |
| | | | | | | | | | | | | | | | These are a tweakable block cipher, and a pseudorandom byte stream. This commit includes test vectors, which were generated from the Python reference implementation and confirmed with a less optimized Rust implementation. | |||||
| * | | New empty CGO module. | Nick Mathewson | 2025-04-29 | 2 | -1/+26 | |
| | | | ||||||
| * | | proto: Unified integration tests for relay crypto. | Nick Mathewson | 2025-04-29 | 1 | -3/+210 | |
| | | | ||||||
| * | | proto: Make relay-side cell crypto traits return tags. | Nick Mathewson | 2025-04-29 | 2 | -15/+20 | |
| | | | | | | | | | | | | | (We'll need these tags both to implement authenticated SENDMES at the relay side, and also to make sure that cgo is generating them correctly.) | |||||
| * | | proto: Make crypt layers take a ChanCmd argument | Nick Mathewson | 2025-04-29 | 5 | -49/+66 | |
| | | | | | | | | | | | | | CGO will need this argument so that it can authenticate the command as part of its crypto operations. (Trying to meddle with RELAY vs RELAY_EARLY will no longer work!) | |||||
| * | | proto: refactor RelayCrypt trait into separate traits | Nick Mathewson | 2025-04-29 | 5 | -21/+80 | |
| | | | | | | | | | | | | | It seems very likely that, as with client crypto, we'll want relay crypto to separable into "forward" and "reverse" objects, so that the two can be used more or less independently. | |||||
| * | | proto: Tweak semantics of RelayCrypt::originate. | Nick Mathewson | 2025-04-29 | 3 | -3/+5 | |
| | | | | | | | | | | | | | | | | | | | | | This makes the behavior of "originate" match the behavior of OutboundClientLayer::originate_for, which creates the message _and_ encrypts it. This will be necessary for CGO, where "originate" and "encrypt" are not easily separated operations. (Nothing uses this trait yet, since relay circuits aren't yet a thing, so it's a good time to get it right.) | |||||
| * | | proto: move tor1 testvector test into tor1 module. | Nick Mathewson | 2025-04-29 | 2 | -54/+79 | |
| | | | ||||||
| * | | proto: Clean up imports in tor1.rs. | Nick Mathewson | 2025-04-29 | 2 | -6/+8 | |
| | | | ||||||
| * | | proto: Move tor1 relay crypto to a separate file. | Nick Mathewson | 2025-04-29 | 2 | -312/+312 | |
| | | | | | | | | | | | | | | | Since we're about to have a second kind of relay cell crypto, it makes sense to move this module. This change is pure code movement. | |||||
| * | | Include "bug" in all bug error messages | Nick Mathewson | 2025-04-28 | 3 | -3/+3 | |
| |/ | ||||||
| * | tor-proto: prevent cc extension during ntor-v3 extend | Steven Engler | 2025-04-24 | 1 | -2/+27 | |
| | | | | | | | | | This was missed in commits ccb65961 and eeda643f. While `params.ccontrol.is_enabled()` should always be false because of those earlier commits which ensure we don't enable congestion control, we were missing the defense-in-depth conditions here that would alert us if we accidentally did enable congestion control. | |||||
| * | tor-circmgr: put vegas cc in `CircParameters` behind `if false` | Steven Engler | 2025-04-23 | 1 | -0/+13 | |
| | | | | | | This means that even with the "flowctl-cc" feature enabled, we shouldn't try to negotiate congestion control. | |||||
