| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | tor-ptmgr: Comment fixes | gabi-250 | 2024-03-14 | 2 | -2/+2 | |
| | | | ||||||
| | * | Add tests for configuring unmanaged transports | Nick Mathewson | 2024-03-14 | 1 | -11/+49 | |
| | | | | | | | | | | | Also, adapt the pt configuration tests to check for whether the error messages are as expected. | |||||
| | * | Add example unmanaged pluggable transport to config. | Nick Mathewson | 2024-03-14 | 1 | -0/+10 | |
| | | | ||||||
| | * | Move comment from factory_for_transport. | Nick Mathewson | 2024-03-14 | 1 | -21/+21 | |
| | | | ||||||
| | * | Clean up parts of the ptmgr docs that assume managed pts | Nick Mathewson | 2024-03-14 | 2 | -4/+8 | |
| | | | ||||||
| | * | Teach get_cmethod_for_transport to handle unmanaged transports. | Nick Mathewson | 2024-03-14 | 2 | -3/+23 | |
| | | | | | | | | | | | | | | | This will suffice to bypass the reactor when we're dealing with an unmanaged pluggable transport. Closes #755. | |||||
| | * | Lightly refactor get_cmethod_for_transport | Nick Mathewson | 2024-03-14 | 1 | -40/+41 | |
| | | | | | | | | | Now that it's extracted, we can remove a mut and some nesting. | |||||
| | * | Rename cmethods => managed_cmethods | Nick Mathewson | 2024-03-14 | 1 | -7/+11 | |
| | | | ||||||
| | * | Extract cmethod lookup from factory_for_transport. | Nick Mathewson | 2024-03-14 | 1 | -59/+77 | |
| | | | ||||||
| | * | Adapt TransportConfig to support unmanaged transports. | Nick Mathewson | 2024-03-14 | 2 | -8/+75 | |
| | | | | | | | | | | | | | | | | | | | | | | | 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]> | |||||
| | * | Rename ManagedTransportConfig to TransportConfig. | Nick Mathewson | 2024-03-14 | 6 | -23/+23 | |
| |/ | | | | We're going to start using this type for _every_ kind of transport. | |||||
| * | Merge branch 'exitpath-onion-svc' into 'main' | gabi-250 | 2024-03-14 | 6 | -208/+349 | |
| |\ | | | | | | | | | tor-circmgr: Add HsPathBuilder for building onion service paths See merge request tpo/core/arti!2038 | |||||
| | * | tor-circmgr: Move pick_path out of AnonymousCircuitBuilder. | Gabriela Moldovan | 2024-03-14 | 4 | -165/+193 | |
| | | | | | | | | | This enables us to make `AnonymousCircuitBuilder` private. | |||||
| | * | tor-circmgr: Improve the HsPathBuilder docs. | Gabriela Moldovan | 2024-03-14 | 1 | -0/+20 | |
| | | | ||||||
| | * | tor-circmgr: Remove unused require_stability. | Gabriela Moldovan | 2024-03-14 | 2 | -16/+1 | |
| | | | ||||||
| | * | CI: Don't build arti with experimental features in rust-latest. | Gabriela Moldovan | 2024-03-14 | 2 | -2/+3 | |
| | | | | | | | | | | | | | | | | | 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). | |||||
| | * | tor-circmgr: Add a TODO about vanguards path selection. | Gabriela Moldovan | 2024-03-14 | 1 | -0/+24 | |
| | | | ||||||
| | * | tor-circmge: Remove AnyRelayForOnionService. | Gabriela Moldovan | 2024-03-14 | 1 | -34/+0 | |
| | | | ||||||
| | * | tor-circmgr: Use HsPathBuilder instead of ExitPathBuilder. | Gabriela Moldovan | 2024-03-14 | 1 | -6/+7 | |
| | | | ||||||
| | * | tor-circmgr: Add a new hspath module for building onion service circuits. | Gabriela Moldovan | 2024-03-14 | 2 | -0/+78 | |
| | | | ||||||
| | * | tor-circmgr: Implement AnonymousPathBuilder for ExitPathBuilder. | Gabriela Moldovan | 2024-03-14 | 2 | -162/+27 | |
| | | | ||||||
| | * | tor-circmgr: Add AnonymousPathBuilder trait. | Gabriela Moldovan | 2024-03-14 | 1 | -4/+177 | |
| |/ | | | | | | | | | | 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.). | |||||
| * | Merge branch 'encapsulate_config_rs' into 'main' | Nick Mathewson | 2024-03-13 | 17 | -106/+159 | |
| |\ | | | | | | | | | Encapsulate usage of config-rs inside tor-config. See merge request tpo/core/arti!2040 | |||||
| | * | Grammar fix. | gabi-250 | 2024-03-13 | 1 | -1/+1 | |
| | | | ||||||
| | * | Remove now-needless dependencies on the "config" crate | Nick Mathewson | 2024-03-13 | 4 | -6/+3 | |
| | | | | | | | | | | | arti and arti-testing no longer need it; tor-config no longer needs it in dev-dependencies. | |||||
| | * | tor-config: Update documentation to not refer to config crate. | Nick Mathewson | 2024-03-13 | 4 | -11/+12 | |
| | | | ||||||
| | * | config: Remove From impls from config::ConfigError | Nick Mathewson | 2024-03-13 | 4 | -18/+18 | |
| | | | | | | | | | These are another case of exposing the config crate. | |||||
| | * | tor-config: Put config::Config inside a wrapper type. | Nick Mathewson | 2024-03-13 | 7 | -24/+35 | |
| | | | | | | | | | This will let us replace Config with something better. | |||||
| | * | Use ConfigurationSource::Verbatim in our tests. | Nick Mathewson | 2024-03-13 | 3 | -23/+41 | |
| | | | ||||||
| | * | tor-config: Allow ConfigurationSource to be verbatim text. | Nick Mathewson | 2024-03-13 | 4 | -14/+32 | |
| | | | | | | | | | | | This will let us test our configuration logic without having to use the `config` crate directly. | |||||
| | * | tor_config: Hide macro-only re-exports. | Nick Mathewson | 2024-03-13 | 4 | -13/+18 | |
| | | | | | | | | | | | Our macros use these exports, but we don't need everybody else to be able to see them. | |||||
| | * | ptmgr: Use Itertools directly. | Nick Mathewson | 2024-03-13 | 3 | -1/+3 | |
| | | | | | | | | | Previously it used tor_config::Itertools, which is silly. | |||||
| | * | ptmgr: reformat Cargo.toml | Nick Mathewson | 2024-03-13 | 1 | -1/+2 | |
| | | | ||||||
| * | | Merge branch 'mixed_attributes_syntax' into 'main' | gabi-250 | 2024-03-13 | 237 | -1/+244 | |
| |\ \ | |/ |/| | | | | | maint/add_warning: permit clippy::mixed_attributes_style in tests. See merge request tpo/core/arti!2042 | |||||
| | * | Add unknown-lints exception to examples | Nick Mathewson | 2024-03-13 | 7 | -1/+7 | |
| | | | | | | | | | | | We need this to avoid warnings when runnning non-nightly clippy on these examples. | |||||
| | * | Run maint/add_warning. | Nick Mathewson | 2024-03-13 | 236 | -0/+236 | |
| | | | ||||||
| | * | maint/add_warning: permit clippy::mixed_attributes_style in tests. | Nick Mathewson | 2024-03-13 | 1 | -0/+1 | |
| |/ | | | | | | 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. | |||||
| * | Merge branch 'prop340-decoding-api' into 'main' | Nick Mathewson | 2024-03-13 | 15 | -94/+365 | |
| |\ | | | | | | | | | relay_cell: Update decoding API to support prop340 format See merge request tpo/core/arti!2034 | |||||
| | * | Remove RelayMsgOuter::decode_from_reader | Jim Newsome | 2024-03-12 | 1 | -11/+3 | |
| | | | | | | | | | | | | | 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. | |||||
| | * | relay-cell: Update relay cell decoding API for prop340 | Jim Newsome | 2024-03-12 | 9 | -56/+338 | |
| | | | | | | | | | | | | | | | | | | | | | | | 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. | |||||
| | * | Rename UnparsedRelayCell -> UnparsedRelayMsg | Jim Newsome | 2024-03-12 | 12 | -48/+45 | |
| | | | | | | | | | | | For consistency with the terminology proposed in https://gitlab.torproject.org/tpo/core/torspec/-/issues/253 | |||||
| * | | Merge branch 'fix_rustdoc_links' into 'main' | Alexander Færøy | 2024-03-12 | 7 | -13/+14 | |
| |\ \ | |/ |/| | | | | | Fix some rustdoc warnings. See merge request tpo/core/arti!2037 | |||||
| | * | Fix some rustdoc warnings. | Nick Mathewson | 2024-03-12 | 7 | -13/+14 | |
| |/ | | | | | These are mostly about explicitly linking to things that were already in scope. | |||||
| * | Merge branch 'tor_relay_selection' into 'main' | Nick Mathewson | 2024-03-12 | 25 | -383/+2126 | |
| |\ | | | | | | | | | | | | | New tor-relay-selection crate to encapsulate relay selection choices. Closes #789 See merge request tpo/core/arti!2002 | |||||
| | * | tor-relay-selection: Use partition() in testing code. | Nick Mathewson | 2024-03-12 | 1 | -9/+3 | |
| | | | ||||||
| | * | Rename and clarify result_is_relaxed. | Nick Mathewson | 2024-03-12 | 1 | -5/+5 | |
| | | | ||||||
| | * | Refactor RelaySelector to make its invariants less subtle. | Nick Mathewson | 2024-03-12 | 1 | -48/+61 | |
| | | | ||||||
| | * | Add a comment about future extensions to RestrictionInner. | Nick Mathewson | 2024-03-12 | 1 | -0/+6 | |
| | | | ||||||
| | * | tor-relay-selector: Clarify "flexible" vs "relaxed" a little. | Nick Mathewson | 2024-03-12 | 2 | -3/+4 | |
| | | | ||||||
| | * | Annotate usage of low_level_predicate_permits_relay | Nick Mathewson | 2024-03-12 | 2 | -1/+15 | |
| | | | ||||||
