| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |/ |
|
| |\
| |
| |
| |
| | |
hsclient: Clarify "hs_hops" to avoid confusion.
See merge request tpo/core/arti!2044
|
| | |
| |
| |
| |
| |
| |
| | |
With the new structure here, it's less likely that somebody will
think this is the length of a circuit that we are building.
See #1332 for an instance of what we're trying to prevent.
|
| |\ \
| |/
|/|
| |
| |
| |
| | |
Implement unmanaged pluggable transports
Closes #755
See merge request tpo/core/arti!2043
|
| | | |
|
| | |
| |
| |
| |
| | |
Also, adapt the pt configuration tests to check for whether the
error messages are as expected.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
This will suffice to bypass the reactor when we're dealing with
an unmanaged pluggable transport.
Closes #755.
|
| | |
| |
| |
| | |
Now that it's extracted, we can remove a mut and some nesting.
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is based on an original branch by Trinity. Instead of its
original approach, which used an enum in the configuration to
distinguish managed from unmanaged transports, this branch uses
builder validation function to ensure that incompatible options
aren't used together. Doing the lets us generate better error
messages.
Thanks: trinity-1686a <[email protected]>
|
| |/
|
|
| |
We're going to start using this type for _every_ kind of transport.
|
| |\
| |
| |
| |
| | |
tor-circmgr: Add HsPathBuilder for building onion service paths
See merge request tpo/core/arti!2038
|
| | |
| |
| |
| | |
This enables us to make `AnonymousCircuitBuilder` private.
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Some experimental features (i.e. `vanguards`) break the shadow
integration tests. Since the examples enable `experimental`, we need
`rust-latest` to build arti using `-p arti`, rather than from the
workspace level (because cargo does feature unification when building
the packages as a workspace).
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| |/
|
|
|
|
|
|
|
|
| |
The `pick_path()` default implementation is an almost verbatim copy of
`ExitPathBuilder::pick_path()`. The only difference is that instead of
using values from `self`, the `AnonymousPathBuilder::pick_path()` uses
the values returned by the different `AnonymousPathBuilder` functions
(i.e., `AnonymousPathBuilder::pick_exit()` instead of
`self.pick_exit()`, `AnonymousPathBuilder::compatible_with()` instead of
`self.compatible_with`, etc.).
|
| |\
| |
| |
| |
| | |
Encapsulate usage of config-rs inside tor-config.
See merge request tpo/core/arti!2040
|
| | | |
|
| | |
| |
| |
| |
| | |
arti and arti-testing no longer need it;
tor-config no longer needs it in dev-dependencies.
|
| | | |
|
| | |
| |
| |
| | |
These are another case of exposing the config crate.
|
| | |
| |
| |
| | |
This will let us replace Config with something better.
|
| | | |
|
| | |
| |
| |
| |
| | |
This will let us test our configuration logic without having
to use the `config` crate directly.
|
| | |
| |
| |
| |
| | |
Our macros use these exports, but we don't need everybody else to
be able to see them.
|
| | |
| |
| |
| | |
Previously it used tor_config::Itertools, which is silly.
|
| | | |
|
| |\ \
| |/
|/|
| |
| | |
maint/add_warning: permit clippy::mixed_attributes_style in tests.
See merge request tpo/core/arti!2042
|
| | |
| |
| |
| |
| | |
We need this to avoid warnings when runnning non-nightly clippy on
these examples.
|
| | | |
|
| |/
|
|
|
|
| |
This is a new warning on nightly. It triggers for every one of our
test blocks that starts with `#[cfg(test)]` and then goes on to
have an `#![allow(...)]` block at the start of the module.
|
| |\
| |
| |
| |
| | |
relay_cell: Update decoding API to support prop340 format
See merge request tpo/core/arti!2034
|
| | |
| |
| |
| |
| |
| | |
The semantics of such a function that supports both the legacy V0 format
and the V1 packing and fragmentation format are a bit tricky. Since it's
not used outside of its module, we can simply remove it.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Prop 340:
https://spec.torproject.org/proposals/340-packed-and-fragmented.html
This updates the decoding API to support multiple versions of the relay
cell encoding, including the new encoding proposed in prop340 that
supports relay message packing and fragmentation.
This commit doesn't actually add support for that new encoding yet.
|
| | |
| |
| |
| |
| | |
For consistency with the terminology proposed in
https://gitlab.torproject.org/tpo/core/torspec/-/issues/253
|
| |\ \
| |/
|/|
| |
| | |
Fix some rustdoc warnings.
See merge request tpo/core/arti!2037
|
| |/
|
|
|
| |
These are mostly about explicitly linking to things that were
already in scope.
|
| |\
| |
| |
| |
| |
| |
| | |
New tor-relay-selection crate to encapsulate relay selection choices.
Closes #789
See merge request tpo/core/arti!2002
|
| | | |
|
| | | |
|