| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |\
| |
| |
| |
| | |
arti-client: increase coverage in src/address.rs
See merge request tpo/core/arti!2029
|
| | |
| |
| |
| |
| |
| | |
- added test for TorAddr::enforce_config with invalid/onion hostname
- added test for display Host::Onion
- added test for any type &T who implement IntoTorAddr trait
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If vanguards are enabled, we will need to be able to reconfigure the HS
circ pool in `TorClient::reconfigure_inner` (to handle the switch from
vanguards-full to vanguards-lite etc.). The reconfiguration needs to
happen even if only one of `onion-service-client` and
`onion-service-service` is enabled.
Without this change, in the `onion-service-client`-enabled /
`onion-service-service`-disabled case, we'd need to reach into
`HsClientConnector::hs_circ_pool` to reconfigure the client
`HsCircPool`. By making `hs_circ_pool` part of `TorClient` in both
cases, we only need to call `HsCircPool::reconfigure` from one place (in
`TorClient::reconfigure_inner`).
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
Closes #1277
|
| | | |
|
| | | |
|
| | | |
|
| |\ \
| |/
|/|
| |
| |
| |
| | |
deny clippy::unchecked_duration_subtraction
Closes #1304
See merge request tpo/core/arti!2008
|
| | | |
|
| | |
| |
| |
| |
| | |
`tor-ptmgr` uses `tor-config` in its public API, and `tor-config` had
its minor version bumped.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
APIs were broken in these pre-1.0.0 crates:
```
tor-keymgr
tor-config
tor-checkable
tor-circmgr
tor-dirmgr
tor-hsclient
tor-hsservice
tor-hsrproxy
```
Done with:
```
cargo set-version --bump minor -p tor-keymgr
cargo set-version --bump minor -p tor-config
cargo set-version --bump minor -p tor-checkable
cargo set-version --bump minor -p tor-circmgr
cargo set-version --bump minor -p tor-dirmgr
cargo set-version --bump minor -p tor-hsclient
cargo set-version --bump minor -p tor-hsservice
cargo set-version --bump minor -p tor-hsrproxy
```
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
APIs were added:
```
tor-units
tor-cell
tor-proto
tor-netdir
arti-client
```
Done with:
```
cargo set-version --bump patch -p tor-units
cargo set-version --bump patch -p tor-cell
cargo set-version --bump patch -p tor-proto
cargo set-version --bump patch -p tor-netdir
cargo set-version --bump patch -p arti-client
```
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Functional changes were made, but no APIs were added or broken:
```
tor-events (async_broadcast 0.6.0 -> 0.7.0)
tor-netdoc (signature 1 -> 2)
tor-guardmgr
arti-testing (config 0.13.4 -> 0.14.0)
tor-persist (breaking changes gated behind experimental feature)
fslock-guard (fix lockfile_has_path compilation on Windows)
```
Done with:
```
cargo set-version --bump patch -p tor-events
cargo set-version --bump patch -p tor-netdoc
cargo set-version --bump patch -p tor-guardmgr
cargo set-version --bump patch -p arti-testing
cargo set-version --bump patch -p tor-persist
cargo set-version --bump patch -p fslock-guard
```
|
| | |
|
| |
|
|
| |
Closes #1283
|
| |\
| |
| |
| |
| |
| |
| | |
Mark onion service features as non-experimental
Closes #1182
See merge request tpo/core/arti!1993
|
| | | |
|
| | | |
|
| |/
|
|
| |
Closes #1202
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Instead of using complicated match statements, use downcasting
to find error types that define specific hints. This also lets us
define a reasonable hint-extractor for anyhow::Error, and use it
when reporting errors in main.
I've left an implementation of hint() in `impl Error`, to
avoid breaking backward compatibility.
Closes #1165.
|
| |
|
|
|
|
| |
Reviewing uses of `#[educe(default)]`, I came across these two places
where it was applied to a non-generic struct without any special
attributes on fields. std's derive will do just as well here.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Since Rust 1.66, std's default works properly for enums, provided that
the default variant is a unit.
Review all uses of `#[educe(default)]` on enums and replace them with
std where possible, which is most of them.
In 1.66 and later, std's `#[derive(Default)]` doesn't infer any
generic bounds on the derived impl, where it's an enum - since the
unit variant can always be constructed. So this change doesn't add
any generic bounds and is not API-visible.
|
| |\
| |
| |
| |
| | |
Remove all semver.md files to start a fresh release round
See merge request tpo/core/arti!1957
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
This crate has had new features added. It's 0.x. So bump in-tree
dependencies' references:
fs-mistrust
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bump the minor version of these crates, and update the in-tree
dependencies.
Recently published as fresh crates, let's just assume there are
breaking changes:
fslock-guard
test-temp-dir
Breaking API change affecting many many downstream crates:
tor-rtcompat
Downstream crates which we're (conservatively) assuming have
tor-rtcompat types in their APIs:
tor-rtmock
tor-log-ratelim
tor-rpcbase
tor-llcrypto
tor-protover
tor-bytes
tor-hscrypto
tor-hspow
tor-socksproto
tor-checkable
tor-cert
tor-linkspec
tor-cell
tor-proto
tor-netdoc
tor-consdiff
tor-netdir
tor-congestion
tor-persist
tor-chanmgr
tor-ptmgr
tor-guardmgr
tor-circmgr
tor-dirclient
tor-dirmgr
tor-keymgr
tor-hsclient
tor-hsservice
tor-hsrproxy
arti-client
arti-rpcserver
arti-config
arti-hyper
arti-bench
arti-testing
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We no longer do replay log locking in IptManager::new. Instead, we
rely on the acquire_instance call in OnionService::launch, which ends
up with ipt_mgr getting an InstanceHandle (which contains a lock
guard).
OnionServiceStateMgr is abolished; it existed to deal with the
generics in the tor_persist::StateMgr API. state_dir has no
generics (other than the T being loaded/stored).
Many places (structs and argument lists) now have state_dir types
which embody a path (or a CheckeDir) along with a lock, rather than
separate path+lock+mistrust.
The creation/startup code uses the new calls from state_dir.
Other more minor changes:
- StartupError::StateDirectoryInaccessible contains tor_persist::Error
- test::create_storage_handles_from_state_dir changed and renamed,
from _from_state_mgr.
- replay::PersistFile's (separate) file lock is now fslock_guard's
|
| | |
|
| |
|
|
|
| |
Service nicknames are represented by `HsNickname`, so let's
rename `HsClientSpecifier` to `HsClientNickname`.
|
| | |
|
| |
|
|
|
|
| |
This introduces an internal `OnionServiceStateMgr` trait, which enables
us to store the `StateMgr` inside the `OnionServiceState` (without
having to parameterize `OnionServiceState` on `S: StateMgr`).
|
| |
|
|
| |
This reduces code duplication.
|
| |
|
|
|
| |
This code was duplicated by `create_inner()` and
`create_onion_service()`.
|
| |
|
|
|
|
|
| |
The `StateMgr` is currently only needed in `launch()`, so we don't
really need to store it.
This allows us to unparameterize OnionService.
|
| |
|
|
|
| |
This will be used from `arti` to create an `OnionService`, to implement
the `arti hss` command.
|
| |
|
|
|
|
|
|
| |
This will enable us to construct non-launched (but configured)
`OnionService`s. We need this, for example, for implementing
the `arti hss` CLI command.
Part of #1227
|
| | |
|
| |
|
|
|
| |
This addresses a `TODO HSS` about not using `internal!` for an error
caused by misconfiguration.
|