summaryrefslogtreecommitdiff
path: root/crates/tor-guardmgr/src
Commit message (Collapse)AuthorAgeFilesLines
* lints: Run maint/add_warning to actually apply new lintsIan Jackson2023-06-211-0/+2
|
* guardmgr, netdir: fix some needless-mut warningsNick Mathewson2023-05-181-2/+2
| | | | Found by clippy nightly
* guardmgr: suppress a clippy-nightly warning.Nick Mathewson2023-05-181-0/+1
| | | | | I don't love this change, but apparently we are trying for "consistency".
* tor-guardmgr, tor-proto: minor logging tweakseta2023-05-181-2/+2
| | | | | | | | - We make the tor-guardmgr "We have found that {} is usable" line include the word "guard", otherwise it doesn't appear very useful to a user in safe logging mode, since the guard gets replaced with [scrubbed]. - The "Actually got an end cell..." message is downgraded to DEBUG.
* Use bool::then_some() as appropriateNick Mathewson2023-04-112-2/+2
| | | | | | Now that we require a version of Rust that allows `b.then_some(v)`, clippy complains about our use of `b.then(|| v)`.
* guardmgr: update feature behavior wrt testing and pts.Nick Mathewson2023-04-061-2/+2
|
* Use humantime in tor-guardmgrSaksham Mittal2023-02-271-3/+3
|
* "Fix" remaining unchecked-subtraction warnings.Nick Mathewson2023-01-271-1/+3
| | | | | In both cases I think it's fine to panic; but it's best to do so explicitly.
* Allow clippy::unchecked_duration_subtraction in testsNick Mathewson2023-01-2710-0/+10
| | | | | This panics on error, and we're fine with a panic on misbehavior in tests.
* Disable clippy::unlinlined-format-argsNick Mathewson2023-01-271-0/+1
| | | | | | | | This warning kind of snuck up on us! (See #748) For now, let's disable it. (I've cleaned it up in a couple of examples, since those are meant to be more idiomatic and user-facing.) Closes #748.
* Complete our migration to base64ct.Nick Mathewson2023-01-201-2/+2
| | | | | | | | | This is in lieu of upgrading to the latest base64 crate, which has a different API from the old one. Since we have to migrate either way, we might as well use base64ct everywhere. I don't think that most of these cases _require_ constant-time base64, but it won't hurt.
* Merge branch 'test-lints' into 'main'eta2023-01-067-0/+56
|\ | | | | | | | | Add test lint blocks to all "mod test" See merge request tpo/core/arti!937
| * test lint blocks: Add many many automaticallyIan Jackson2022-12-127-0/+56
| | | | | | | | | | This is precisely the result of running the rune in maint/adhoc-add-lint-blocks.
* | Remove allow(unreachable_pub) from tor-guardmgr/src/lib.rsNeel Chauhan2022-12-161-5/+0
|/ | | | Closes #589
* Rename for_circuit_usage => as_relay_with_descNick Mathewson2022-11-302-2/+2
|
* bridge config: Add a TODO about a redundant cloneIan Jackson2022-11-301-0/+3
|
* bridge config: Rename accessorsIan Jackson2022-11-301-2/+2
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/904#note_2858480
* bridge config: Use unreachable, not None.expectIan Jackson2022-11-301-2/+1
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/904#note_2858479
* Separate BridgeAddr and PtTargetAddrIan Jackson2022-11-301-22/+30
| | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/issues/668#note_2858220 This commit is difficult to split up. The innards of BridgeAddr and PtTargetAddr are still a bit entangled.
* Merge branch 'more-linkspec-tests' into 'main'Nick Mathewson2022-11-291-1/+1
|\ | | | | | | | | Add tests for a bunch of code in tor-linkspec See merge request tpo/core/arti!867
| * Fix up compatibility issues between linkspec tests and other patchesNick Mathewson2022-11-281-1/+1
| |
* | Merge branch 'ptmgr-optional-dep' into 'main'Ian Jackson2022-11-291-0/+5
|\ \ | | | | | | | | | | | | | | | | | | Support building without pluggable transports Closes #649 See merge request tpo/core/arti!898
| * | guardmgr: Conditionalise DisplayRule::RedactedIan Jackson2022-11-291-0/+5
| | | | | | | | | | | | This is unused in bridgeless configs. Fixes a compiler warning.
* | | guardmgr: remove todo about bridge::config::Inner membersNick Mathewson2022-11-291-4/+0
| | | | | | | | | | | | We've revised this a few times; now it seems plausible.
* | | guardmgr: Remove now-unneeded #[allow(unnecessary_wraps)]Nick Mathewson2022-11-291-1/+0
|/ /
* | Rustdoc fix: escape []s.Nick Mathewson2022-11-281-1/+1
| |
* | GuardMgr: Treat Guards as sensitive and Bridges as redacted.Nick Mathewson2022-11-283-5/+46
| | | | | | | | | | This machinery is a bit inelegant, but it is all confined to be within the GuardMgr crate, so IMO it should be fine for now.
* | Display guards in redacted form in guard status messages.Nick Mathewson2022-11-281-3/+3
|/ | | | | | Closes #627, again. Closes #648.
* Merge branch 'chanmethod-non-exhaustive' into 'main'Nick Mathewson2022-11-272-1/+27
|\ | | | | | | | | Make ChannelMethod non-exhaustive See merge request tpo/core/arti!891
| * Make ChannelMethod non-exhaustiveIan Jackson2022-11-242-1/+27
| | | | | | | | | | | | | | | | | | Enums with variants conditional on cargo features must be non-exhaustive, because cargo features are supposed to be additive, meaning that enabling a feature (which might happen due to some random distant thing) ought not to break things using that enum. There were surprisingly few places to fix this.
* | Merge branch 'reconfig-bridges-bad' into 'main'Nick Mathewson2022-11-273-11/+63
|\ \ | |/ |/| | | | | | | | | Require state ownership when using bridges Closes #612 See merge request tpo/core/arti!889
| * tor-guardmgr: rustfmt for recent changesIan Jackson2022-11-242-5/+6
| | | | | | | | Left unsquashed for ease of review
| * tor-guardmgr: NoLock error: add TODO for trying to get lockIan Jackson2022-11-241-0/+2
| | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/889#note_2856874
| * tor-config: Rename to ReconfigureError::UnsupportedSituationIan Jackson2022-11-241-1/+1
| | | | | | | | | | | | | | | | From Unsupported. Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/889#note_2856873 This was added in this MR. Also add the missing semver note.
| * tor-config: Rename to ConfigBuildError::NoCompileTimeSupportIan Jackson2022-11-241-1/+1
| | | | | | | | | | | | | | | | | | From Unsupported. Following one of the suggestions here https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/889#note_2856873 This was added in 2c3711614908d0c9cf1663b20b67a3fc233301f4 which was not yet in a release so this isn't a semver break. I have added the semver note that was omitted in that MR.
| * tor-guardmgr: Refuse to configure bridges if we don't have the lockIan Jackson2022-11-232-1/+18
| | | | | | | | Fixes #612
| * tor-guardmgr: make replace_bridge_config fallibleIan Jackson2022-11-232-7/+38
| | | | | | | | | | | | The error type needs to be convertible to GuardMgrError and also to ReconfigureError. Neither of those is right, so we need a new error type.
| * tor-guardmgr: Replace a let _ignore with a typed versionIan Jackson2022-11-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | `let _ignore =` isn't great because if the function called is currently infallible, but becomes fallible, it suppresses the detection of the error check. A better pattern is to specify the type of the ignored value. I'm about to do precisely this, here. I did a git-grep and `let _ignore =` seems very common. Let's not deal with all those now.
* | Merge branch 'bridge-config-arc' into 'main'Nick Mathewson2022-11-233-29/+43
|\ \ | | | | | | | | | | | | | | | | | | Make BridgeConfig be Arc, so no Arc<BridgeConfig> Closes #635 See merge request tpo/core/arti!885
| * | BridgeConfig: Replace all Arc<BridgeConfig> with BridgeConfigIan Jackson2022-11-222-7/+3
| | | | | | | | | | | | BridgeConfig is itself an Arc now, so these are redundant.
| * | BridgeConfig: Make it be a newtype around Arc<Inner>Ian Jackson2022-11-221-21/+40
| | | | | | | | | | | | | | | This leaves the external API of this type unchanged, but now it's much smaller and quite cheap to clone.
| * | bridge config: Remove a done TODOIan Jackson2022-11-221-1/+0
| | | | | | | | | | | | This was done by !874 and #604 closed accordingly.
* | | Merge branch 'test-config' into 'main'Ian Jackson2022-11-232-2/+2
|\ \ \ | | | | | | | | | | | | | | | | tor-guardmgr: Fix visibility of TestConfig with no features enabled See merge request tpo/core/arti!875
| * | | tor-guardmgr: Fix visibility of TestConfig with no features enabledIan Jackson2022-11-182-2/+2
| | | | | | | | | | | | | | | | | | | | Without this, tor-guardmgr tests don't build when run without the crate's own testing feature enabled.
* | | | 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
| | | |
* | | | CircMgr: retire all circuits if bridge configuration changes.Nick Mathewson2022-11-221-7/+40
| |_|/ |/| | | | | | | | Closes #650.
* | | 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