aboutsummaryrefslogtreecommitdiff
path: root/crates/tor-keymgr/Cargo.toml
Commit message (Collapse)AuthorAgeFilesLines
* Update patchlevel for crates with nontrivial changes.Nick Mathewson2023-09-051-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 ```
* tor-keymgr: Bump ssh-key to 0.6.1 and remove unnecessary dependency.Gabriela Moldovan2023-08-241-11/+1
| | | | | | | Now that [ssh-key 0.6.1] is out, we no longer need the explicit sec1 dependency in tor-keymgr. [ssh-key 0.6.1]: https://github.com/RustCrypto/SSH/pull/155
* tor-keymgr, tor-hsservice: deser for ArtiPathComponent and HsNicknameIan Jackson2023-08-231-0/+1
|
* tor-keymgr: Add sec1 0.7.3 dependency.Gabriela Moldovan2023-08-161-0/+10
|
* keymgr: Bump ssh-key to 0.6.0.Gabriela Moldovan2023-08-161-1/+1
| | | | This brings in the changes from #936.
* Merge branch 'bump_versions_117' into 'main'arti-v1.1.7Nick Mathewson2023-08-011-5/+5
|\ | | | | | | | | Vesion bumps for 1.1.7. See merge request tpo/core/arti!1458
| * Increment patchlevel versions of crates with minor changesNick Mathewson2023-08-011-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Run "fixup features" in preparation for a release.Nick Mathewson2023-08-011-1/+1
|/
* keymgr: Add KeyMgr::generate() for generating new keys.Gabriela Moldovan2023-07-241-0/+1
|
* keymgr: Add function for generating EncodableKeys.Gabriela Moldovan2023-07-241-0/+1
|
* keymgr: Upgrade to latest itertools.Nick Mathewson2023-07-171-1/+1
| | | | (Everything else is already on 0.11.0.)
* tor-keymgr: Add ArtiNativeKeystoreConfig.Gabriela Moldovan2023-07-131-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the keystore config consisted of a single field in `StorageConfig`, which encoded 2 bits of information: whether the keystore is enabled, and its root directory: ``` [storage] # use this path, fail if compiled out # keystore = "/path/to/arti/keystore" # # use default path, fail if compiled out # keystore = true # # disable # keystore = false ``` This commit adds `ArtiNativeKeystoreConfig`, which will replace the multi-purpose `keystore` field. The new config will look like this: ``` #[storage.keystore] # Whether the keystore is enabled. # # If the `keymgr` feature is enabled and this option is: # * set to false, we will ignore the configured keystore path. # * set to "auto", the configured keystore, or the default keystore, if the # keystore path is not specified, will be used # * set to true, the configured keystore, or the default keystore, if the # keystore path is not specified, will be used # # If the `keymgr` feature is disabled and this option is: # * set to false, we will ignore the configured keystore path. # * set to "auto", we will ignore the configured keystore path. # # Setting this option to true when the `keymgr` feature is disabled is a # configuration error. #enabled = "auto" # The root directory of the arti keystore #path = "${ARTI_LOCAL_DATA}/keystore" ``` While `ArtiNativeKeystoreConfig` currently only has 2 fields, `enabled` and `path`, future versions of the keystore might require additional config options.
* keymgr: Use Box<dyn EncodableKey> instead of Box<dyn Any>.Gabriela Moldovan2023-07-101-0/+1
| | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1337#note_2917701 This will make it harder to accidentally return the wrong value from `Keystore::get` (the returned value is now at least guaranteed to implement `EncodableKey`). Closes #937
* Bump patchlevel versions on crates with smaller changesNick Mathewson2023-06-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Done with the commands below. The following crates have had various changes, and should get a patchlevel bump. Since they are pre-1.0, we do not need to distinguish new APIs from other changes. ``` cargo set-version --bump patch -p arti-client cargo set-version --bump patch -p safelog cargo set-version --bump patch -p tor-bytes cargo set-version --bump patch -p tor-cert cargo set-version --bump patch -p tor-circmgr cargo set-version --bump patch -p tor-config cargo set-version --bump patch -p tor-consdiff cargo set-version --bump patch -p tor-dirclient cargo set-version --bump patch -p tor-dirmgr cargo set-version --bump patch -p tor-error cargo set-version --bump patch -p tor-hsservice cargo set-version --bump patch -p tor-linkspec cargo set-version --bump patch -p tor-llcrypto cargo set-version --bump patch -p tor-netdir cargo set-version --bump patch -p tor-netdoc cargo set-version --bump patch -p tor-proto cargo set-version --bump patch -p tor-rpcbase cargo set-version --bump patch -p tor-socksproto ``` This crate has new features, but no new non-experimental Rust APIs. So even though it is post-1.0, it gets a patchlevel bump. ``` cargo set-version --bump patch -p arti ```
* Bump minor versions on crates with breaking changesNick Mathewson2023-06-301-1/+1
| | | | | | | | | | Done with: ``` cargo set-version --bump minor -p tor-hsclient cargo set-version --bump minor -p arti-rpcserver cargo set-version --bump minor -p tor-hscrypto cargo set-version --bump minor -p tor-cell ```
* Resolve XXXs from fixup-features.Nick Mathewson2023-06-291-1/+0
| | | | | Some of these seem spurious: it looks like fixup-features resolved an issue and then complained about it too. I'll investigate further.
* Run "cargo sort".Nick Mathewson2023-06-291-1/+0
|
* Run "fixup-features".Nick Mathewson2023-06-291-0/+4
|
* Merge branch 'exp' into 'main'Ian Jackson2023-06-291-1/+1
|\ | | | | | | | | tor-error: Make KeystoreFsPermissions experimental for now See merge request tpo/core/arti!1350
| * tor-keymgr: When keymgr enabled, enable tor-error's experimental tooIan Jackson2023-06-291-1/+1
| |
* | Merge branch 'validate-client-spec' into 'main'Ian Jackson2023-06-291-0/+1
|\ \ | | | | | | | | | | | | keymgr: Validate ArtiPaths, replace HsClientSpecifier with generic ArtiPathComponent See merge request tpo/core/arti!1262
| * | keymgr: Remove ArtiPath normalization, introduce additional restrictions.Gabriela Moldovan2023-06-291-0/+1
| |/
* / tor-keymgr features: Make "keymgr" disabled by defaultIan Jackson2023-06-291-1/+1
|/
* Merge branch 'keymgr-tests' into 'main'gabi-2502023-06-291-0/+3
|\ | | | | | | | | keymgr: Add tests for ArtiNativeKeyStore See merge request tpo/core/arti!1337
| * keymgr: Add tests for ArtiNativeKeyStore::key_path.Gabriela Moldovan2023-06-291-0/+3
| |
* | keymgr: Add support for x25519 keys.Gabriela Moldovan2023-06-271-1/+1
|/
* keymgr: Create a KeyStoreError trait for keystore errors.Gabriela Moldovan2023-06-261-0/+1
| | | | | | The new `BoxedError` type will replace `tor_keymgr::Error`. Part of #901
* keymgr: Remove blank line to satisfy maint/cargo_sort.Gabriela Moldovan2023-06-221-1/+0
|
* keymgr: Define a `keymgr` feature.Gabriela Moldovan2023-06-221-0/+15
| | | | | | | The dummy key manager impl from `arti-client` will be moved to `tor-keymgr` soon. This commit adds a `keymgr` feature flag to `tor-keymgr` which will eventually be used to choose between the real key manager API and the dummy one.
* keymgr: Move FS operations out of ssh.rsGabriela Moldovan2023-06-201-0/+1
| | | | | | | This moves the filesystem calls from the `ssh` module to `ArtiNativeKeyStore`. While `ArtiNativeKeyStore` shouldn't be concerning itself with filesystem operations either, that refactoring will be tackled separately (see arti#899).
* keymgr: Add an error variant for fs_mistrust errors.Gabriela Moldovan2023-06-201-0/+1
| | | | | This will be useful later, when `KeyMgr` will start validating permissions and paths.
* keymgr: Add ArtiNativeKeyStore implementation skeleton.Gabriela Moldovan2023-06-151-0/+20
This adds implementation stubs for `ArtiNativeKeyStore`, and introduces the traits needed to make the `KeyStore` APIs work.