| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This adds the three new parameters specified in Prop 362 [0].
Two of these replace hardcoded defaults in the code.
The third, HiddenServiceProofOfWorkV1ServiceIntroTimeoutSeconds, is not
implemented yet, but will be in a future commit.
[0]: https://spec.torproject.org/proposals/362-update-pow-control-loop.html
|
| |\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | | |
Bump MSRV to Rust 1.85
Closes #2095
See merge request tpo/core/arti!3128
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
(We were unable to do this before, since it required a rust version
we didn't have.)
|
| | | | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
Remove semver.md files, post-release.
See merge request tpo/core/arti!3127
|
| | | | | |
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
Fix Windows compile warnings
See merge request tpo/core/arti!3114
|
| | | |_|/
| |/| |
| | | |
| | | |
| | | | |
Use unix-specific crates only if needed and suppress clippy warnings of
unused variables if their usage is unix-specific.
|
| | | | | |
|
| | |_|/
|/| | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
Use congestion control when "flowctl-cc" is enabled
See merge request tpo/core/arti!3118
|
| | | | | |
|
| | | | | |
|
| | |/ / |
|
| | | |
| | |
| | |
| | | |
Signed-off-by: David Goulet <[email protected]>
|
| | | |
| | |
| | |
| | | |
Signed-off-by: David Goulet <[email protected]>
|
| | | |
| | |
| | |
| | | |
This reverts commit 9dca6010d17e2a4b9deee34c9bb66e523a6ac834.
|
| | | |
| | |
| | |
| | |
| | | |
We shouldn't be exposing these unless `hs-service`/`hs-client` is
enabled.
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
The service is supposed to send the RENDEZVOUS1 to the rendezvous point
itself, not the virtual hop.
|
| | | |
| | |
| | |
| | | |
It's necessary and more verbose (and it's rather uncommon).
|
| | | |
| | |
| | |
| | |
| | | |
`AbstractTunnel::extend()` was calling itself endlessly because there
was no `ClientTunnel::extend()` function to call.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Until now, we've been using `ClientCirc::path_ref()` to get the *only*
path of a circuit. Now that `ClientCirc` is a handle to a tunnel reactor
(which may or may not be multi-path), we need to decide for each call
site of `path_ref()`, if we actually want *all* paths in the tunnel, or
if we expect the tunnel to be single-path and thus want the *only* path
in the tunnel.
I've added two new APIs to address this: `all_paths()`, for getting all
the paths in the tunnel, and `single_path()` for getting the only path
in the tunnel, or an error if the tunnel is single-path.
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
When the `send-control-msg` feature is enabled, we reexport it from
`tor-proto`, so it needs to be made `pub`.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
These were removed somewhere along the way (which is now causing the
clippy checks to fail).
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
Previously the error message would say `Single circuit getter on multi
path tunnel`. The new error message makes it clearer that calling
`ClientTunnel::allow_stream_requests()` on a multi path tunnel is not
supported.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes the `allow_stream_requests()` tests which ensures we don't
allow incoming streams on multipath tunnels (because we don't currently
support it).
This also changes `newcirc_ext` to return `ClientTunnel` instead of
`Arc<ClientTunell>` (we need to mutate `ClientTunnel` to manually set
`is_multi_path` on its inner `ClientCirc`).
|
| | | | |
|
| | | |
| | |
| | |
| | | |
`as_single_circ()` returns an error for multipath tunnels.
|
| | | |
| | |
| | |
| | | |
Signed-off-by: David Goulet <[email protected]>
|
| | | |
| | |
| | |
| | |
| | |
| | | |
Adapt all tests to use the new ClientTunnel.
Signed-off-by: David Goulet <[email protected]>
|
| | | |
| | |
| | |
| | | |
Signed-off-by: David Goulet <[email protected]>
|
| | | |
| | |
| | |
| | | |
Signed-off-by: David Goulet <[email protected]>
|
| | | |
| | |
| | |
| | | |
Signed-off-by: David Goulet <[email protected]>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The BaseTunnel now has a start_conversation() which takes a TargetHop
meaning it can be used with a multi path tunnel.
The Conversation object has been moved into the tunnel namespace out of
the circuit one.
Signed-off-by: David Goulet <[email protected]>
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
This entirely removes the requirement on ClientCirc.
Signed-off-by: David Goulet <[email protected]>
|