summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* rpc-client-core: Correct various FFI error types.Nick Mathewson2024-12-093-6/+65
|
* rpc-client: Initial implementation for RPC connect points.Nick Mathewson2024-12-095-70/+314
| | | | | | | | | This commit covers the major points of the design: Parsing the environment, parsing and resolving connect points, connecting to Arti, and handling errors. There are a few areas that need to be fixed, all marked with XXXXs.
* connpts: duplicate socket before returning.Nick Mathewson2024-12-091-15/+24
| | | | | (We want a separate read and write socket before we return, and once we've done the type-erasure, we can't do try_clone().)
* connpts: Add default connect points as constants.Nick Mathewson2024-12-091-0/+60
|
* rpc-client: move Builder to its own module.Nick Mathewson2024-12-093-85/+96
|
* arti_client_paths: Clean up documentation.Nick Mathewson2024-12-091-4/+7
|
* Move base CfgPathResolver for arti-client back to tor-config-path.Nick Mathewson2024-12-095-121/+150
| | | | | This time, we make explicit that it is a _base_ resolver, and that it is client-only.
* tor-keymgr: Replace internal error with keystore corruption error.Gabriela Moldovan2024-12-042-1/+5
| | | | | This replaces a placeholder error with a concrete `KeystoreCorruptionError` variant.
* tor-keymgr: Add tests for ArtiNativeKeystore's handling of certs.Gabriela Moldovan2024-12-041-1/+29
|
* tor-keymgr: Add support for certs in ArtiNativeKeystore::insert().Gabriela Moldovan2024-12-041-5/+8
|
* tor-keymgr: Add support for certs in ArtiNativeKeystore::get().Gabriela Moldovan2024-12-041-8/+36
| | | | | This makes `ArtiNativeKeystore::get` deserialize the keystore item as a cert, if its `KeystoreItemType` is `Cert`.
* tor-keymgr: Add arti native keystore helper for parsing tor certs.Gabriela Moldovan2024-12-042-0/+42
| | | | | We'll soon use this in `ArtiNativeKeystore`'s `Keystore` implementation for parsing certs read from disk.
* tor-keymgr: Add tests for the new cert mgmt functions.Gabriela Moldovan2024-12-041-1/+172
|
* tor-keymgr: s/TestKey/TestItem in tests.Gabriela Moldovan2024-12-041-55/+55
| | | | | We're about to reuse TestKey as our test key "certificate", so let's preemptively rename it to something more fitting.
* tor-keymgr: Add a test certificate specifier to test_utils.Gabriela Moldovan2024-12-041-1/+34
| | | | This is about to be used in a couple of places.
* tor-key-forge: Enable use of tor-cert experimental APIs.Gabriela Moldovan2024-12-041-1/+1
|
* tor-cert: Add constructor for creating an encoded cert from a byte slice.Gabriela Moldovan2024-12-042-0/+18
| | | | | | This adds an experimental API for creating an `EncodedEd25519Cert` from a byte slice. We will need this in `ArtiNativeKeystore` for deserializing the on-disk certs to `KeystoreItem`s.
* tor-key-forge: Export certificate-related types.Gabriela Moldovan2024-12-041-0/+5
|
* tor-keymgr: Note some breaking changes in semver.md.Gabriela Moldovan2024-12-041-0/+3
|
* tor-key-forge: Implement KeystoreItem::item_type.Gabriela Moldovan2024-12-042-2/+9
|
* tor-keymgr: s/key/item in error message test.Gabriela Moldovan2024-12-042-2/+2
|
* tor-key-forge: s/EncodableKey/EncodableItem in documentation.Gabriela Moldovan2024-12-041-11/+11
|
* tor-keymgr: Rename error variant.Gabriela Moldovan2024-12-043-14/+13
|
* tor-keymgr: Remove unused KeyType import.Gabriela Moldovan2024-12-041-1/+1
|
* tor-keymgr: Add KeyMgr::get_or_generate_key_and_cert.Gabriela Moldovan2024-12-041-0/+119
|
* tor-keymgr: Add KeyMgr::get_key_and_cert() (fmt).Gabriela Moldovan2024-12-042-6/+11
|
* tor-keymgr: Add KeyMgr::get_key_and_cert().Gabriela Moldovan2024-12-044-3/+98
|
* tor-keymgr: Remove no-longer-needed explicit link targets.Gabriela Moldovan2024-12-041-2/+2
| | | | | These aren't needed anymore now that `KeySpecifierComponent` is in scope.
* tor-keymgr: Add helper for building certificate ArtiPaths.Gabriela Moldovan2024-12-043-2/+130
| | | | This will be used for looking up certificates in the keystore.
* tor-keymgr: Split some logic out of KeyMgr::get_from_store().Gabriela Moldovan2024-12-041-6/+24
| | | | | We're soon going to need the "raw" version of the function (the one that returns the key as `K::Key`).
* tor-keymgr: Add variants for missing cert/signing key errors.Gabriela Moldovan2024-12-041-0/+8
| | | | | These will be soon be returned by `KeyMgr::{get_key_and_cert,get_or_generate_key_and_cert}`.
* tor-key-forge: Implement EncodableItem for Tor ed25519 certs.Gabriela Moldovan2024-12-043-5/+20
| | | | | This will enable us to store `tor_cert::EncodedEd25519Cert`s in the keystore.
* tor-keymgr: Replace as_ssh_key_data with as_keystore_item (fmt).Gabriela Moldovan2024-12-044-4/+5
|
* tor-keymgr: Replace as_ssh_key_data with as_keystore_item.Gabriela Moldovan2024-12-046-39/+42
|
* tor-key-forge: Add into_erased impl for KeystoreItem.Gabriela Moldovan2024-12-041-1/+12
| | | | This will be used by the `Keystore` implementations.
* tor-key-forge: Replace EncodableItem::key_type() with item_type() (fmt).Gabriela Moldovan2024-12-041-2/+1
|
* tor-key-forge: Replace EncodableItem::key_type() with item_type().Gabriela Moldovan2024-12-045-38/+34
| | | | | This function now returns a `KeystoreItemType`, enabling us to represent certs as `EncodableItem`s.
* tor-keymgr: Update docs post-renaming.Gabriela Moldovan2024-12-041-9/+9
|
* tor-key-forge: Let declare_item_type macro generate the tests.Gabriela Moldovan2024-12-041-32/+52
| | | | | This enables us to auto-generate tests for all the supported key/cert file extensions.
* tor-keymgr: Replace KeyType with KeystoreItemType (fmt).Gabriela Moldovan2024-12-047-21/+70
|
* tor-keymgr: Remove now-unused import.Gabriela Moldovan2024-12-041-1/+1
|
* tor-key-forge: Remove no longer needed KeyType::Unknown variant.Gabriela Moldovan2024-12-042-42/+3
| | | | | Items that have an unrecognized file extension now get mapped to `KeystoreItemType::Unknown`.
* tor-keymgr: Replace KeyType with KeystoreItemType.Gabriela Moldovan2024-12-049-148/+172
| | | | | This is part of the work needed to support storing certificates in the keystore (they won't have a `KeyType`, but rather `CertType`).
* tor-key-forge: Export KeystoreItem.Gabriela Moldovan2024-12-041-1/+1
|
* tor-key-forge: Rename EncodableKey to EncodableItem.Gabriela Moldovan2024-12-0411-46/+46
| | | | | | | | This is the first step in replacing `EncodableKey` with the new `EncodableItem` trait (see doc/dev/keymgr-certificates.md). (this refactoring is split over multiple commits to make reviewing easier)
* tor-key-forge: Add a KeystoreItem type to replace SshKeyData.Gabriela Moldovan2024-12-041-1/+22
| | | | | | | The `EncodableKey` trait will soon be extended to support encoding certificates too (in addition to keys), so we need a type to represent an object that is either a key or a certificate (in other words, an encodable *item*).
* tor-key-forge: Add an encodable cert type.Gabriela Moldovan2024-12-043-0/+26
|
* tor-key-forge: Add a ToEncodableCert trait.Gabriela Moldovan2024-12-042-1/+50
|
* tor-keymgr: Add a KeyCertificateSpecifier trait (fmt).Gabriela Moldovan2024-12-041-3/+2
|
* tor-keymgr: Add a KeyCertificateSpecifier trait.Gabriela Moldovan2024-12-042-0/+28
| | | | This will be used for defining key certificate specifiers.