summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | Merge branch 'matrix-test' into 'main'Nick Mathewson2022-11-231-0/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | maint/matrix_test: Print what command we are running! See merge request tpo/core/arti!879
| * | | | | maint/matrix_test: Print what command we are running!Ian Jackson2022-11-211-0/+1
| | | | | |
* | | | | | Merge branch 'stability' into 'main'Nick Mathewson2022-11-232-17/+0
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | arti-client, tor-config: Remove stability warning from top-level docs See merge request tpo/core/arti!878
| * | | | | | arti-client, tor-config: Remove stability warning from top-level docsIan Jackson2022-11-212-17/+0
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ticket #285 is closed and most of this is stable now we think. (There are still a couple of stability warnings for specific types in tor-config, which aren't exposed at the arti-client level.)
* | | | | | Merge branch 'remove_deadcode_allow' into 'main'Nick Mathewson2022-11-231-1/+0
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | guardmgr: Remove a now-unneeded "allow(dead_code)" See merge request tpo/core/arti!862
| * | | | | | guardmgr: Remove a now-unneeded "allow(dead_code)"Nick Mathewson2022-11-161-1/+0
| | | | | | |
* | | | | | | Merge branch 'install_mgr' into 'main'Nick Mathewson2022-11-236-36/+172
|\ \ \ \ \ \ \ | |_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | ChanMgr: Implement the functions needed to install a ChannelFactory and an AbstractPtMgr. See merge request tpo/core/arti!888
| * | | | | | ChanMgr: Another attempt to build on CI.Nick Mathewson2022-11-231-1/+7
| | | | | | |
| * | | | | | ChanMgr: Rename Factory -> CompoundFactoryNick Mathewson2022-11-232-5/+5
| | | | | | |
| * | | | | | ChanMgr: Fix a few more conditional-compilation issuesNick Mathewson2022-11-233-0/+3
| | | | | | |
| * | | | | | ChanMgr: Remove Arc aliases.Nick Mathewson2022-11-231-12/+6
| | | | | | |
| * | | | | | Mark set-default-factory API as experimental.Nick Mathewson2022-11-232-5/+4
| | | | | | |
| * | | | | | Make ChannelFactory and AbstractPtMgr require Send+SyncNick Mathewson2022-11-232-6/+6
| | | | | | |
| * | | | | | ChanMgr: Implement functions that replace channel factories.Nick Mathewson2022-11-234-21/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit makes it possible to replace the default channel factory (used when there is no PtMgr), and to replace the PtMgr. This is part of #659.
| * | | | | | ChanMgr: move the AbstractChanFactory into MgrState.Nick Mathewson2022-11-225-18/+60
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We will want the freedom to replace this, so it needs to go behind a lock. We need to be able to Clone it cheaply now, so we're using an Arc instead of a Box.
* | | | | | Merge branch 'retire_on_guard_cfg_change' into 'main'Nick Mathewson2022-11-223-19/+102
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CircMgr: retire all circuits if bridge configuration changes. Closes #650 See merge request tpo/core/arti!880
| * | | | | | Even more comments explaining circuit cancellation.Nick Mathewson2022-11-221-3/+37
| | | | | | |
| * | | | | | Improve notes surrounding circuit cancellation.Nick Mathewson2022-11-222-6/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that bug #656 is not a real bug, but it was easy to overlook the code that prevented it. Closes #656.
| * | | | | | CircMgr: retire all circuits if bridge configuration changes.Nick Mathewson2022-11-222-12/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #650.
* | | | | | | Merge branch 'abstract-pt-mgr' into 'main'Nick Mathewson2022-11-225-74/+34
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | Replace TransportRegistry with AbstractPtMgr See merge request tpo/core/arti!887
| * | | | | | Merge branch 'main' into 'abstract-pt-mgr'Nick Mathewson2022-11-2254-349/+1348
| |\ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | # Conflicts: # crates/tor-chanmgr/src/factory.rs
* | | | | | | Merge branch 'bridge-transp-parse' into 'main'Ian Jackson2022-11-223-52/+124
|\ \ \ \ \ \ \ | | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use TransportId FromStr in BridgeConfig parsing Closes #653 See merge request tpo/core/arti!881
| * | | | | | TransportId: Fix test case for no pt-targetIan Jackson2022-11-221-16/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes cargo +stable clippy --manifest-path=/home/ian/Rustup/Arti/arti/Cargo.toml --locked --target-dir=target --offline -p tor-linkspec --no-default-features --all-targets giving 446 | .method(ChannelMethod::Pluggable(PtTarget::new( | ^^^^^^^^^ variant or associated item not found in `transport::ChannelMethod`
| * | | | | | bridge config parsing tests: Show expected error message in asssrtIan Jackson2022-11-221-2/+3
| | | | | | |
| * | | | | | bridge config parsing: Parse transport as TransportId (fmt)Ian Jackson2022-11-221-17/+15
| | | | | | |
| * | | | | | bridge config parsing: Parse transport as TransportIdIan Jackson2022-11-221-11/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #653
| * | | | | | bridge config parsing: Move unsupported blockIan Jackson2022-11-221-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This will make the next commit textually smaller.
| * | | | | | TransportId: Parse "bridge" as builtin transportIan Jackson2022-11-221-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow transport="bridge" in bridge configurations, etc. Doing it at this layer means it will be recognised everywhere.
| * | | | | | TransportId: Provide new_builtin and new_pluggableIan Jackson2022-11-221-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I think normal Rustic practice is to provide a real constructor as well as just `Default`.
| * | | | | | TransportId: Provide name accessor and deconstructorIan Jackson2022-11-221-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We are maintaining the notion that at some point this thing might grow additional variants.
| * | | | | | TransportId: Document and change string repr for builtinIan Jackson2022-11-221-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Change the Display of builtin to "-" * Parse "" and "-" as builtin, as well as "<none>" * Document this
| * | | | | | TransportId: Add test case for builtin Display reprIan Jackson2022-11-221-0/+2
|/ / / / / /
* | | | | | Merge branch 'atty' into 'main'Nick Mathewson2022-11-221-0/+7
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ignore atty theoretical unaligned read for now See merge request tpo/core/arti!883
| * | | | | | Ignore atty theoretical unaligned read for nowIan Jackson2022-11-221-0/+7
|/ / / / / /
* | | | | | Merge branch 'bridge-require' into 'main'Ian Jackson2022-11-217-148/+232
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refuse to run with bridges configured, but disabled in the build Closes #644 See merge request tpo/core/arti!877
| * | | | | | bridge non-support: Add doc notes to GuardMgrConfig::bridges_enabledIan Jackson2022-11-211-0/+7
| | | | | | |
| * | | | | | bridge non-support: Test that we reject configsIan Jackson2022-11-211-4/+19
| | | | | | |
| * | | | | | bridge non-support: De-cfg the primary bridge config fieldsIan Jackson2022-11-212-10/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now parse the `bridges.enabled` BoolOrAuto, and the `bridges.bridges` list. The `bridges.bridges` list is Vec<()> in the builder, and Vec<Void> in the built config. Ie, it is simply a count, and vanishes in the built config. But this count triggers us to try to call build(), to try to parse bridges, and to try to set and honour the enablement boolean. The result is that the type system now ensures that if bridges are disabled, but specified (either by listing them in the config, or writing `enabled=true`), we inevitably try to insist that we have a non-empty Vec<Void>, which is of course impossible. There will be a test case too for those who think this too abstract a way to guarantee this property :-).
| * | | | | | bridge non-support: Provide a better BridgeConfigBuilderIan Jackson2022-11-212-3/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This type now does all the things people expect of it: you can (try to) deserialize it, parse it from a string, and call build on it.
| * | | | | | bridge config: Feature-gate the error variantsIan Jackson2022-11-211-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This leaves this enum empty of actual errors, when bridge-client is disabled. We're going to add the not supported variant in a moment.
| * | | | | | bridge config: Move error to its own fileIan Jackson2022-11-212-104/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The dummy module is going to need an error type just like this but with only the disabled variant. To avoid that dummy enum getting out of step with the nontrivial one, we're going to make them the same. So as a first step, break this out into its own file.
| * | | | | | bridge non-support: Move dummy bridge module into own fileIan Jackson2022-11-212-22/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A bit more stuff is going to appear here, so it's getting to be rather much for an inline module.
| * | | | | | arti cfg test: Break out expect_err_contains functionIan Jackson2022-11-211-9/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Maybe this will want to be in tor-error or something but put it here for now.
| * | | | | | bridge non-support: Disable the test for nowIan Jackson2022-11-211-0/+1
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test will start to fail if you compile without bridge support, because we'll start rejecting the test configurations with bridges specified. We'll add a proper test for this later.
* | | | | | Merge branch 'bridge-config-builder' into 'main'Ian Jackson2022-11-2114-74/+734
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce BridgeConfigBuilder Closes #604 See merge request tpo/core/arti!874
| * | | | | tor-config: introduce ConfigBuildError::UnsupportedIan Jackson2022-11-212-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | And use it in bridge configuration parsing.
| * | | | | tor-config: ConfigBuildError::within: Introduce add_prefixIan Jackson2022-11-211-3/+4
| | | | | |
| * | | | | bridge config builder: Introduce error constructor helpers (fmt noise)Ian Jackson2022-11-211-12/+12
| | | | | |
| * | | | | bridge config builder: Introduce error constructor helpersIan Jackson2022-11-211-40/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/874/diffs?commit_id=12d13428d8fcc68b7b0f231bac9fc130b3eeb18b#d53209cbcd12771c549f3a130379ecb65dd60145_100_193
| * | | | | bridge config builder: Document one id of each type restrictionIan Jackson2022-11-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/874/diffs?commit_id=620cc90f6dcdad20f49a001a9e04d191a323e904#d53209cbcd12771c549f3a130379ecb65dd60145_100_124