summaryrefslogtreecommitdiff
path: root/crates/arti-client
Commit message (Collapse)AuthorAgeFilesLines
* Patchlevel bumps to crates whose dependencies just changed.Nick Mathewson2023-10-021-1/+1
| | | | (The only change in these crates is that their dependencies changed.)
* Minor-version bumps, for crates with breaking changes.Nick Mathewson2023-10-021-6/+6
|
* Patchlevel bumps, with dependents affected.Nick Mathewson2023-10-021-9/+9
|
* Run "fixup-features" on arti crates.Nick Mathewson2023-10-021-1/+1
|
* hss: actually provide a stream of RendRequest from launch().Nick Mathewson2023-09-271-1/+1
|
* tor-hsservice: Run cargo fmt.Gabriela Moldovan2023-09-271-3/+1
|
* tor-hsservice: Make Launchable a non-async trait.Gabriela Moldovan2023-09-271-1/+0
| | | | | This doesn't need to be an async_trait now that `Publisher::launch` is no longer async.
* arti-client: add a minimal onion-service-launching API.Nick Mathewson2023-09-272-6/+62
|
* arti-client: add an onion-service-service featureNick Mathewson2023-09-261-1/+6
| | | | (I am not thrilled with this name.)
* tor-hsclient, arti-client, tor-keymgr, tor-netdoc: Use a keypair instead of ↵Gabriela Moldovan2023-09-251-2/+2
| | | | | | | | | | | | | StaticSecret. Previously, when retrieving `KS_hsc_desc_enc` keys (or any other x25519 keys) from the keystore, the keymgr would discard the public part of the key (SSH private keys contain the public part of the key too). Instead of discarding the public key and returning just the `StaticSecret`, the keymgr now returns a `StaticKeypair`. This makes the x25519 `EncodableKey`/`ToEncodableKey` implementation consistent with the ed25519 one (which retrieves key pairs rather than "unescorted" secrets).
* arti-client: add exit selection with GeoIP country codeseta2023-09-183-1/+47
| | | | | | | | | | | | | | | | | | | | This threads the country codes work through the rest of the codebase: - `tor-dirmgr` will now enable GeoIP with the embedded database when the `geoip` future is enabled - This can be extended later using the `DirMgrConfig` to allow specifying a custom database; this is not done here, though - `tor-circmgr`'s `SupportedCircUsage` and `TargetCircUsage` fields gain new `country_code` members to allow filtering circuits by country - These are `()` in builds where the `geoip` feature is not enabled -- doing it this way means we don't have to copy and paste huge swathes of code, since we can't use `#[cfg]` in patterns - `ExitPathBuilder` gains (hacked-in) support for choosing a relay with the correct country code - Due to the lack of conjuction, we just copy and paste a small bit, pending further refactoring - `StreamPrefs` now lets you specify a country code, letting embedders make use of the feature
* Merge branch 'bumps' into 'main'arti-v1.1.8Ian Jackson2023-09-051-17/+17
|\ | | | | | | | | Version bumps in preparation for today's release See merge request tpo/core/arti!1570
| * Update patchlevel for crates with nontrivial changes.Nick Mathewson2023-09-051-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are: ``` hashx equix tor-async-utils tor-error tor-config tor-rtmock tor-llcrypto tor-bytes tor-hscrypto tor-hspow tor-cert tor-linkspec tor-cell tor-proto tor-netdoc tor-netdir tor-chanmgr tor-guardmgr tor-dirmgr tor-keymgr tor-hsclient tor-hsservice arti-client arti ```
| * Minor-version bumps for crates with breaking changes.Nick Mathewson2023-09-051-1/+1
| | | | | | | | | | | | | | | | | | These are: ``` tor-dirclient tor-ptmgr ```
* | Run "fixup-features" in preparation for release.Nick Mathewson2023-09-051-1/+1
|/
* Run maint/add_warning to add lint block everywhereIan Jackson2023-08-2310-0/+10
|
* arti-client: Fix a couple more typos.Nick Mathewson2023-08-222-2/+2
| | | | I spotted these while I was working on something else.
* Use "typos-cli" to fix a bunch of typos.Nick Mathewson2023-08-221-1/+1
|
* Resolve a pair of warnings about redundant closures.Nick Mathewson2023-08-221-2/+2
|
* Resolve warnings about ambiguous/redundant doc linksNick Mathewson2023-08-221-2/+2
| | | | | Nightly rustdoc now warns if you have a link that isn't necessary, and if you have a link that might refer to two different things.
* arti-client: fix conditional unused_import and dead_code warningsNick Mathewson2023-08-162-5/+7
|
* arti-client: Use Path::join instead of format!.Gabriela Moldovan2023-08-141-1/+1
|
* arti-client: Make from_directories() derive the keystore_dir from state_dir.Gabriela Moldovan2023-08-111-1/+39
| | | | Closes #988
* bridge config: Fix an error message slightlyIan Jackson2023-08-081-1/+1
|
* arti-client config test: partially un-degrade formattingIan Jackson2023-08-081-10/+10
|
* arti-client config test: degrade formattingIan Jackson2023-08-081-12/+18
| | | | As demanded by rustfmt
* arti-client config: Add an extra test case for bridgesIan Jackson2023-08-081-0/+45
| | | | This complements the new `check_bridge_pt` test.
* bridge config: reject bridges=true when there are no bridgesIan Jackson2023-08-081-2/+0
| | | | This is a bugfix. Perhaps it is a security fix?
* Run add_warnings on all files.Nick Mathewson2023-08-041-2/+2
|
* Fix and expand the description of OnionAddressDisabledNick Mathewson2023-08-031-2/+9
| | | | | Previously there was a missing "not", and it didn't say what to do about the error.
* Add error if [[bridges.transports]] isn't written in config fileSaksham Mittal2023-08-012-10/+203
|
* Increment patchlevel versions of crates with minor changesNick Mathewson2023-08-011-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These crates are at version 0.x.y, so we don't need to distinguish new-feature changes from other changes: ``` tor-basic-utils fs-mistrust tor-error tor-geoip tor-checkable tor-linkspec tor-netdoc tor-netdir tor-persist tor-ptmgr tor-hsservice ``` This crate has a breaking change, but only when the semver-breaking feature `experimental-api` is enabled: ``` tor-config ``` This crate is at version 1.x.y, but has no new public APIs, and therefore does not need a minor version bump: ``` arti ```
* Update minor versions on crates that have had breaking changesNick Mathewson2023-08-011-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These crates had first-order breaking changes: ``` retry-error tor-keymgr tor-proto tor-hsclient tor-rtmock ``` Additionally, these broke because they re-exposed RetryError: ``` tor-circmgr ``` Additionally, these broke because they may re-expose something from tor-proto: ``` arti-client tor-chanmgr tor-dirclient tor-dirmgr tor-guardmgr ``` Additionally, these broke for other fiddly reasons: `tor-ptmgr` implements traits from tor-chanmgr, which has a breaking change above. `arti-hyper` exposes types from arti-client in its API.
* pass reconfigure_lock guard into TorClient::reconfigure_innersw1tch2023-07-251-3/+8
|
* cargo fmtsw1tch2023-07-241-1/+3
|
* fixes deadlock in TorClient::reconfiguresw1tch2023-07-241-1/+34
|
* Revert "keymgr: Require callers to be explicit about which keystore to get ↵Gabriela Moldovan2023-07-211-6/+4
| | | | | | | | | keys from." This reverts commit 38a6c74c7894dc96b16c9039cacc2a4023977b05. This also updates some tests to make them compile with the reverted version of the code.
* keymgr: Require callers to be explicit about which keystore to get keys from.Gabriela Moldovan2023-07-201-4/+6
|
* keymgr: Explicitly specify the default keystore for `KeyMgr`.Gabriela Moldovan2023-07-201-4/+5
|
* keymgr-config: Make fields private, add function for checking if keystore is ↵Gabriela Moldovan2023-07-201-5/+1
| | | | | | | | | enabled. Hiding the underlying value of `enabled` enables us to give it a different `auto` value depending on whether the `keymgr` feature is enabled or not (it defaults to `true` if `keymgr` is enabled, and `false` otherwise).
* arti-client: Use a default keystore config if `experimental-api` is disabled.Gabriela Moldovan2023-07-202-21/+18
| | | | | | | The `experimental-api` was only meant to apply to the use of the unstable `ArtiNativeKeystoreConfig` in the Arti config. `experimental-api` was _not_ supposed to be used for enabling/disabling the keystore (that's what the `enabled` flag is for).
* arti-client: Move variable closer to where it's used (fmt).Gabriela Moldovan2023-07-201-24/+21
|
* arti-client: Move variable closer to where it's used.Gabriela Moldovan2023-07-201-2/+1
|
* arti-client: Make the `KeyMgr` optional.Gabriela Moldovan2023-07-201-34/+43
| | | | | If the Arti keystore is disabled, we have nothing to initialize the `KeyMgr` with, so we might as well make it optional.
* arti-client: Add TODO about expanding the keystore_dir in build().Gabriela Moldovan2023-07-171-0/+2
|
* arti-client: Log whether a keystore is in use.Gabriela Moldovan2023-07-131-1/+4
|
* arti-client: Use the config struct from tor-keymgr.Gabriela Moldovan2023-07-132-92/+23
|
* arti-client: Log whether the client auth keys were retrieved.Gabriela Moldovan2023-07-121-0/+2
|
* arti-client: Remove outdated TODO.Gabriela Moldovan2023-07-111-3/+0
| | | | These errors aren't ignored anymore.
* Run maint/add_warning to actually apply new lint allowsIan Jackson2023-07-1011-0/+11
|