aboutsummaryrefslogtreecommitdiff
path: root/tor-circmgr/src
Commit message (Collapse)AuthorAgeFilesLines
* Move all crates into a `crates` subdirectory.Nick Mathewson2021-08-2714-5387/+0
| | | | | This will cause some pain for now, but now is really the best time to do this kind of thing.
* Tweaks on patch to add clippy::unwrap_used lint.Nick Mathewson2021-08-272-11/+12
| | | | | | | The most frequent changes are: - Rewording messages about poisoned locks - Correcting some error types
* WIP: Add the "unwrap_used" lint.S0AndS02021-08-247-16/+70
| | | | | | | | | | | | | | | | | > Check `unwrap_used` section of Clippy documentation for details; > > https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_used This adds the following Clippy configuration to crates; #![deny(clippy::unwrap_used)] **Warning** while tests and compiler do not show any errors, the submitted changes are very much a Work In Progress and mistakes may have been made. Check https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/67 Merge Request thread for more details.
* Switch all uses of the log crate to the tracing.Jani Monoses2021-08-203-14/+14
| | | | Issue #74
* Fix a comment typoNick Mathewson2021-08-181-1/+1
|
* Light doc editsNick Mathewson2021-08-181-7/+14
|
* allow new without default for IsolationTokenTrinity Pointard2021-08-181-0/+1
|
* replace IsolationToken::default with no_isolationTrinity Pointard2021-08-181-2/+9
|
* Revisions based on new documented-panics lint.Nick Mathewson2021-08-182-13/+10
| | | | | I've tried to remove some of possible panics, and improve the documentation for when the others might occur.
* Merge remote-tracking branch 'origin/mr/60'Nick Mathewson2021-08-181-0/+5
|\
| * Add the "missing_panics_doc" lint.S0AndS02021-08-131-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | > Check `missing_panics_doc` section of Clippy documentation for details; > > https://rust-lang.github.io/rust-clippy/master/index.html#missing_panics_doc This adds the following Clippy configuration to crates; #![deny(clippy::missing_panics_doc)] And adds necessary doc-comments to methods that may panic.
* | Merge remote-tracking branch 'origin/mr/61'Nick Mathewson2021-08-181-0/+1
|\ \
| * | Add the "implicit_clone" lint.S0AndS02021-08-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | > Check `implicit_clone` section of Clippy documentation for details; > > https://rust-lang.github.io/rust-clippy/master/index.html#implicit_clone This adds, and addresses, the following Clippy configuration to crates; #![deny(clippy::implicit_clone)] And moves related line within `maint/add_warning.py` file. My intent is to mitigate extra edits after merging, so please let me know if I need to do this last bit differently.
* | | Make construct_netdir() return a PartialNetDir.Nick Mathewson2021-08-173-5/+5
|/ / | | | | | | | | This way we can still use it even if we've removed too many microdescriptors to make a real network.
* / X_m tiebreaker rules are now specifiedNick Mathewson2021-08-171-2/+0
|/
* Use add_warnings.py for clippy::cast_losslessNick Mathewson2021-08-131-1/+1
|
* Merge remote-tracking branch 'origin/mr/59'Nick Mathewson2021-08-132-7/+11
|\
| * Add the "cast_lossless" lint.S0AndS02021-08-122-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | > Check `cast_lossless` section of Clippy documentation for details; > > https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless This adds the following Clippy configuration to crates; #![deny(clippy::cast_lossless)] And applies suggested Clippy and `cargo fmt` fixes.
* | Restore success and failure counts with timeout state.Nick Mathewson2021-08-131-2/+18
|/
* Fix a few rustdoc link warnings.Nick Mathewson2021-08-121-2/+5
|
* Merge remote-tracking branch 'origin/mr/58'Nick Mathewson2021-08-121-1/+3
|\
| * Reorder doc headlines in tor-circmgrLennart Kloock2021-08-121-1/+3
| |
* | Use real network parameter values to tune test circuits.Nick Mathewson2021-08-121-2/+7
| | | | | | | | Finishes #145.
* | Periodically launch timeout-testing circuits.Nick Mathewson2021-08-121-34/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | Our path-spec says that, if we don't have enough build-time data to make a good estimate for our timeouts, we should periodically try launching testing circuits just to see how long they take to build. Here we implement that. The implementation is a bit wonky because of how our crates are factored; see arti#161 for more info. Closes #145. Closes #57.
* | WIP: Launch testing circuits as needed to find timeoutsNick Mathewson2021-08-112-0/+64
| | | | | | | | This won't work yet, since it needs directories and doesn't have them.
* | For timeout testing, support for "useless" circuits.Nick Mathewson2021-08-112-0/+32
| | | | | | | | | | We need the idea of launching a circuit for timeout testing, and getting something that either exits someplace or exits noplace at all.
* | Add ability to launch a circuit to _some_ exit, without giving ports.Nick Mathewson2021-08-113-3/+67
| | | | | | | | | | | | We'll want this for testing circuits and for RESOLVE requests. Closes #155.
* | Use the correct unused-circuit timeout when we're learning timeouts.Nick Mathewson2021-08-105-5/+32
|/
* Make a basic daemon task to close circuits.Nick Mathewson2021-08-101-5/+40
| | | | | | The timing is not ideal here; we'll want to refactor it later. Closes #51
* Use real network parameters to set unused-circ timeouts.Nick Mathewson2021-08-102-3/+60
|
* Initial code to expire unused circuits.Nick Mathewson2021-08-103-39/+121
|
* Make MAX_CIRC_DIRTINESS configurable.Nick Mathewson2021-08-102-13/+34
|
* Have CircMgr::new() return an Arc<>.Nick Mathewson2021-08-101-3/+8
|
* Refactor double_timeout() to make its timeouts futures in advanceNick Mathewson2021-08-091-2/+7
| | | | | | | | | | Since these futures rely on the current time when they decide when to expire, we don't want them looking at the current time from inside the call to runtime.spawn or after that call. Instead we'd like them to look immediately on construction. This approach is based on a comment from janimo on #149. It doesn't fix #149, though.
* Implement initial persistence for circuit timeout dataNick Mathewson2021-08-065-9/+168
| | | | | There's more to do here: we never actually store the data we get here, and we won't work at all when somebody else has the lock.
* Add unnecessary_wraps to the big warning list.Nick Mathewson2021-08-061-0/+1
|
* Missing tor-circmgr/src/config.rsNick Mathewson2021-08-051-0/+67
|
* Add a configuration structure for CircMgr.Nick Mathewson2021-08-056-33/+109
| | | | | | This patch makes path configuration and request timing options get exposed up to the tor-client level. I'm trying `derive_build` here so we can eventually get consistent across all our builders.
* Small cleanups and tweaks to same_subnet code.Nick Mathewson2021-08-051-9/+18
|
* Merge remote-tracking branch 'origin/mr/45'Nick Mathewson2021-08-051-6/+12
|\
| * Support EnforceDistinctSubnetsSmitty2021-08-011-6/+12
| | | | | | | | | | Relays on the same IPv4 /16 or IPv6 /32 are treated as being in the same family.
* | Fix typos and other spelling mistakesrls2021-07-316-16/+16
|/
* [f] fix pareto test not compile issuedagger2021-07-221-8/+8
| | | | Signed-off-by: dagger <[email protected]>
* Merge remote-tracking branch 'origin/mr/42'Nick Mathewson2021-07-214-11/+10
|\
| * address some possibly slightly controversial lintsDaniel Eades2021-07-213-9/+8
| |
| * address a bunch of hopefully uncontroversial lintsDaniel Eades2021-07-202-2/+2
| |
* | Fix a ocumentation link issue.Nick Mathewson2021-07-211-1/+1
|/
* Temporarily disable build.rs tests as unreliable :/Nick Mathewson2021-07-201-0/+6
|
* tor-circmgr: Improve coverage on build.rs.Nick Mathewson2021-07-192-3/+225
| | | | | | | | | The good news is that this tests the succeeding and failing cases, and even managed to expose an off-by-one error in our hop counting. The bad news is that these tests have shown even more ways in which our wait_for code is unreliable, and forced me to slow it down even harder.
* Fix an actual off-by-one error!Nick Mathewson2021-07-191-1/+1
| | | | This was in deciding when to report a circuit as completed.