| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |\ \
| | |
| | |
| | |
| | | |
Add support for handling CREATE_FAST cells and launching a circuit reactor
See merge request tpo/core/arti!3846
|
| | | | |
|
| | | |
| | |
| | |
| | | |
This reverts commit 9c38daf2d3548feca2ff555f5bd52165add0d20c.
|
| | | |
| | |
| | |
| | | |
This is needed for the revert in the following commit.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Instead of giving the `CreateRequestHandler` to the channel after it's
constructed, we integrate it into the handshake so that we can give it
to the channel constructor.
The `ChannelType` is no longer part of the `Channel`.
Some of the tests could be cleaned up slightly now that the channel
doesn't need the `ChannelType`, but I don't want to conflict with !3853.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Prefer runtime.now/wallclock to SystemTime/Instant::now, when available.
Closes #2428
See merge request tpo/core/arti!3845
|
| | | |/
| |/|
| | |
| | |
| | |
| | |
| | | |
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.
|
| | | | |
|
| | | | |
|
| |/ /
| |
| |
| |
| |
| | |
We only need this for `relay` builds.
Closes #2450
|
| |\ \
| | |
| | |
| | |
| | | |
Address post-merge comments from nickm's review in mr 3791
See merge request tpo/core/arti!3802
|
| | | |
| | |
| | |
| | | |
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]>
|