summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | GuardMgr: Also apply filters to fallback directories.Nick Mathewson2022-06-172-7/+12
| | | | |
| * | | | GuardMgr: remove disallowed addresses from returned FirstHops.Nick Mathewson2022-06-174-2/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since a guard can have a bunch of addresses, and the guard is permitted if any one of those addresses is permitted, then we might decide to use a guard with some non-permitted addresses. Thus, we need to filter those addresses before returning the view of the guard as a FirstHop.
| * | | | GuardMgr: Remove old testing filter variant.Nick Mathewson2022-06-172-21/+9
| | | | | | | | | | | | | | | | | | | | | | | | | We don't need to restrict based on bits in the key id any longer, since we have a real filter.
| * | | | GuardMgr: Add a new filter type based on reachable addresses.Nick Mathewson2022-06-172-8/+24
| | | | |
| * | | | Guardmgr: Change the GuardFilter API.Nick Mathewson2022-06-173-19/+46
| |/ / / | | | | | | | | | | | | | | | | The guard filter is now a set of restrictions that can be placed on allowable guards.
* | | | Merge branch 'config-fix2' into 'main'Nick Mathewson2022-06-168-104/+76
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Use impl_standard_builder more and remove manual Default/builder impls See merge request tpo/core/arti!594
| * | | | tor-proto: channel: Tell clippy it's ok to print in testsIan Jackson2022-06-161-0/+1
| | | | |
| * | | | impl_standard_builder: Use for tor_dirmgr::AuthorityIan Jackson2022-06-161-10/+2
| | | | |
| * | | | impl_standard_builder: Use for tor_guardmgr::FallbackDirIan Jackson2022-06-161-6/+3
| | | | |
| * | | | impl_standard_builder: Use for tor_dirmgr::DownloadScheduleIan Jackson2022-06-161-14/+3
| | | | |
| * | | | impl_standard_builder: Use for arti::logging::LogfileConfigIan Jackson2022-06-161-7/+2
| | | | |
| * | | | impl_standard_builder: Allow for !DefaultIan Jackson2022-06-161-13/+54
| | | | |
| * | | | arti: logging config: Replace a manual Debug implIan Jackson2022-06-162-7/+5
| | | | |
| * | | | impl_standard_builder: Use for tor_dirmgr::DownloadScheduleConfigIan Jackson2022-06-161-14/+1
| | | | |
| * | | | impl_standard_builder: Use for tor_dirmgr::NetworkConfigIan Jackson2022-06-161-19/+2
| | | | |
| * | | | impl_standard_builder: Use for tor_dirmgr::DirSkewToleranceIan Jackson2022-06-161-13/+2
| | | | |
| * | | | tor-config: impl_standard_builder: handle contexts with local ResultIan Jackson2022-06-161-1/+1
| | | | |
* | | | | Merge branch 'upgrade_float_eq' into 'main'Ian Jackson2022-06-161-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Upgrade to float_eq 1.0.0 See merge request tpo/core/arti!591
| * | | | | Upgrade to float_eq 1.0.0Nick Mathewson2022-06-161-1/+1
| | |/ / / | |/| | |
* | | | | Merge branch 'config-fix' into 'main'Ian Jackson2022-06-164-49/+92
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Config handling and logging fixes Closes #480 See merge request tpo/core/arti!589
| * | | | | arti: cfg: Remove another needless borrowIan Jackson2022-06-161-1/+1
| | | | | |
| * | | | | arti cfg tests: Remove a redundant line that shadows an earlier bindingIan Jackson2022-06-161-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prompted by review https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/589#note_2813596
| * | | | | Fix grammar erroreta2022-06-161-1/+1
| | | | | |
| * | | | | arti: Enable some pre-config loggingIan Jackson2022-06-161-2/+16
| | | | | |
| * | | | | arti: Introduce closure which will be used for pre-config loggingIan Jackson2022-06-161-31/+52
| | | | | | | | | | | | | | | | | | | | | | | | Right now this is an IEFI and therefore a no-op.
| * | | | | arti cfg tests: Test that example config works as-isIan Jackson2022-06-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | It contains only sections, but we want to detect when that is a problem!
| * | | | | arti: cfg tests: Refactor to prepare for new testIan Jackson2022-06-161-16/+23
| | |/ / / | |/| | | | | | | | | | | | | We're going to call this new closure another time.
| * | | | Add some missing `serde(default)` to uses of humantime_serde::optionIan Jackson2022-06-162-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Without this, if the substructure is provided, these fields are mandatory within it.
* | | | | Merge branch 'main' into 'accel-features'Nick Mathewson2022-06-1629-158/+271
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | # Conflicts: # crates/arti-client/Cargo.toml
| * | | | Merge branch 'high-level-features' into 'main'Nick Mathewson2022-06-1612-86/+166
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add "full" and "experimental" features to arti, arti-client, and below. Closes #499 See merge request tpo/core/arti!584
| | * | | | Remove "rustls" from "full", for license reasons.Nick Mathewson2022-06-154-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rustls uses ring, which uses code from BoringSSL, which derived from OpenSSL before OpenSSL changed their license. So ring is currently under 3BSD/SSLEay licenses, which aren't GPL-compatible, which may be a problem for some people. See #493.
| * | | | | Merge branch 'clippy_20220614' into 'main'Nick Mathewson2022-06-157-12/+21
| |\ \ \ \ \ | | |_|/ / / | |/| | | | | | | | | | | | | | | | Fix several clippy issues, most with nightly See merge request tpo/core/arti!588
| | * | | | Add one more "allow" to tor_netdoc::parse::macros.Nick Mathewson2022-06-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without this, clippy is error-free, but `cargo test` somehow gives a warning.
| | * | | | Permit eprintln in channel-padding test.Nick Mathewson2022-06-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is not, apparently, an eprintln equivalent for allow-dbg-in-tests.
| | * | | | Fix clippy::significant_drop_in_scrutinee warningsNick Mathewson2022-06-154-12/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is apparently a new warning from clippy nightly, documented in https://rust-lang.github.io/rust-clippy/master/index.html#significant_drop_in_scrutinee . I'm not in love with the temporary variables that this warning wants me to introduce, but it does seem like a decent way to avoid some kinds of deadlock.
| | * | | | Work around an erroneous warning from nightly clippyNick Mathewson2022-06-151-0/+3
| | | |/ / | | |/| |
| * | | | Merge branch 'unwrap' into 'main'Nick Mathewson2022-06-138-45/+15
| |\ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | tor-netdir: testnet: Make construct_netdir infallible See merge request tpo/core/arti!585
| | * | | tor-netdir: testnet: Make construct_netdir infallible (rustfmt)Ian Jackson2022-06-136-30/+10
| | | | | | | | | | | | | | | | | | | | | | | | | Run rustfmt. Separate commit to make review of the substantive commit easier.
| | * | | tor-netdir: testnet: Make construct_netdir infallibleIan Jackson2022-06-138-15/+5
| | | | | | | | | | | | | | | | | | | | | | | | | This is a *lot* of unwraps. The function takes no parameters and is used only for testing. It ought to be infallible.
| * | | | Merge branch 'dormant_directory' into 'main'Nick Mathewson2022-06-137-90/+218
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use TaskSchedule to sleep in directory bootstrapping Closes #497 See merge request tpo/core/arti!571
| | * | | | DirMgr: Use scopeguard crate in place of ad hoc RAII substitutesNick Mathewson2022-06-132-68/+19
| | | | | |
| | * | | | Put the task schedule back when the dl task exits.Nick Mathewson2022-06-131-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow somebody else to call bootstrap() if bootstrap() fails the first time.
| | * | | | New API to expose and use TaskHandle from DirMgr.Nick Mathewson2022-06-133-2/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change also means that we need to create the handle and scheduler earlier in the process of creating the DirMgr. If we don't, we won't have a way to manage the task before bootstrap() returns.
| | * | | | DirMgr: Refactor bootstrap to use a TaskSchedule for sleeping.Nick Mathewson2022-06-102-32/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change (not yet exposed as an API) will let the TorClient have a `TaskHandle` corresponding to the directory task, letting it make the directory task dormant as needed.
| | * | | | TaskSchedule: Add a sleep_until_wallclock method too.Nick Mathewson2022-06-102-2/+15
| | | | | |
| | * | | | Add a `sleep` function to TaskSchedule.Nick Mathewson2022-06-071-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Having this alias makes it easier to implement more complex schedules, like those used in DirMgr.
| | * | | | Add "suspend" and "resume" to TaskSchedule.Nick Mathewson2022-06-071-0/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unlike "cancel" and "fire", "suspend" and "resume" don't change any pending timers or events: they just prevent execution of those events for a while, and let them resume later on.
| * | | | | Merge branch 'option' into 'main'eta2022-06-133-1/+7
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | config: Be consistent about Option Closes #488 See merge request tpo/core/arti!582
| | * | | | | config: document semver changeIan Jackson2022-06-101-0/+1
| | | | | | |
| | * | | | | config: Suppose that we might extend resolve_option to non-T::DefaultIan Jackson2022-06-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per point 3 in https://gitlab.torproject.org/tpo/core/arti/-/issues/488