| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
We can't pass the request handler during the `Channel` constructor since
it would require conditionally compiled function arguments, which aren't
nice.
|
| | | |
| | |
| | |
| | | |
for handling CREATE* messages on channels.
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
This better fits with existing code that uses `restricted_msg!` and is a
bit more flexible.
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
I think it was written like this because earlier versions of rust didn't
allow references to temporaries like `&mut rand::rng()` and needed them
to be bound to a variable. But this isn't necessary anymore and so the
comment doesn't make sense.
|
| | | |
| | |
| | |
| | |
| | | |
When used for relay channels, the channel reactor will soon need to
spawn relay circuit reactors.
|
| | | | |
|
| | | |
| | |
| | |
| | | |
And rename `CircMap::add_ent()` to `add_origin_ent()`.
|
| | | | |
|
| | | | |
|
| |\ \ \
| |_|/
|/| |
| | |
| | |
| | |
| | | |
memquota: Add new add_parent() API
Closes #2427
See merge request tpo/core/arti!3829
|
| | | |
| | |
| | |
| | | |
Closes #2427
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
tor-proto: Change an error from `CircuitClosed` to `NotConnected`
Closes #2421
See merge request tpo/core/arti!3825
|
| | |/ /
| | |
| | |
| | |
| | | |
Returning `CircuitClosed` isn't right here since the circuit may not
have closed.
|
| | | |
| | |
| | |
| | | |
This appears often in the arti logs, but is a normal thing to happen.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
tor-proto: Allow sending DATA cells on closed streams
Closes #2434
See merge request tpo/core/arti!3824
|
| | |/ /
| | |
| | |
| | |
| | | |
Previously we would close the circuit, which isn't great because there
can be other streams in use on the circuit.
|
| | |/
|/|
| |
| |
| |
| |
| | |
Previously we'd get the time by calling Instant::now, but that would
lead to a mismatch with the runtime if we were mocking.
Part of #2428.
|
| | |
| |
| |
| | |
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| | |
We use this constant value when building the AUTHENTICATE cell to
optimize the memory allocation as this won't ever change.
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| | |
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| | |
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This object contains a melting pot of public keys, private keys and
certificates.
Rename it to reflect that it is channel authentication material and not
"identities.
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374454
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
No need to call `set_authenticated()` for a relay initiator channel
because relay initiator channel are always authenticated and thus the
underlying channel cell codec will always use the R2R restricted message
set.
This is only useful to a relay responder channel. The naming of that
function is not great actually and should probably change.
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Mostly, identity a `ChanTarget` as a "target" since we juggle with
PeerInfo and OwnedChanTarget nowadays.
All certificate and keys have very specific names which attempts to
match the spec as much as possible.
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Only get the inner generic unverified channel into a verified channel
after the actual verification in the relay responder handshake.
Some variables needed a rename as this was dangerously named.
No behavior change.
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374481
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374476
and
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374478
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make read_msg() into a helper and use it accross the handshake code.
No behavior change.
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374466
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| | |
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374465
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| | |
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374462
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| | |
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
We can remove the "/* take_slog */ true" pattern and instead have an
explicit type at the callsite for semantic.
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374457
Signed-off-by: David Goulet <[email protected]>
|
| | |
| |
| |
| |
| |
| | |
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3791#note_3374457
Signed-off-by: David Goulet <[email protected]>
|
| |/
|
|
| |
Signed-off-by: David Goulet <[email protected]>
|
| |\
| |
| |
| |
| |
| |
| | |
Port to use web-time for compatibility with wasm32
Closes #2356
See merge request tpo/core/arti!3820
|
| | | |
|
| | | |
|
| | | |
|
| |/
|
|
|
| |
This was previously creating a new CircuitAccount in
`new_outbound_circ()`, and then immediately dropping it.
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
The `ForwardHandler` trait is meant for implementation-dependent
functions that are called from the implementation-agnostic
`ForwardReactor`. Previously `handle_unrecognized_cell()` was called
directly by the generic `ForwardReactor`, but that's no longer the case,
so it doesn't belong in the trait anymore.
This commit is just code motion. Best reviewed with `--color-moved`
|
| |
|
|
| |
Closes #2417
|
| |
|
|
|
|
|
|
|
| |
This adds an initial set of tests for the circuit reactor.
We will, of course, add more tests as we continue working on the
implementation.
Closes #2353
|
| | |
|
| |
|
|
| |
This will soon be used by the relay tests too.
|
| | |
|
| |
|
|
| |
This will be needed for the relay circuit reactor tests.
|