| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Merge branch 'arti-path-bug' into 'main' | gabi-250 | 2023-06-30 | 1 | -9/+22 |
| |\ | | | | | | | | | keymgr: Allow periods in ArtiPath and ArtiPathComponent. See merge request tpo/core/arti!1358 | ||||
| | * | keymgr: Update ArtiPath and ArtiPathComponent docs. | Gabriela Moldovan | 2023-06-30 | 1 | -2/+2 |
| | | | | | | | | | | | The docs were lying, we actually support UTF-8 paths (though we might later decide to restrict the charset further). | ||||
| | * | keymgr: Allow periods in ArtiPath and ArtiPathComponent. | Gabriela Moldovan | 2023-06-30 | 1 | -9/+22 |
| | | | | | | | | | | | | | | | The `ArtiPath` of a client auth key contains the `HsId` of the onion Since the `HsId` contains a `.onion` component, let's allow `.` for now. In the future, we may want to update the code (and keystore structure) to strip away the `.onion` part before building the `ArtiPath`. | ||||
| * | | keymgr: Downgrade "TODO hs" to "TODO HSS" | Gabriela Moldovan | 2023-06-30 | 1 | -0/+3 |
| |/ | | | | This TODO doesn't need to block the release. | ||||
| * | keymgr: Rename KeyStore to Keystore globally. | Gabriela Moldovan | 2023-06-29 | 8 | -35/+35 |
| | | | | | | We've been capitalizing the "s" in "KeyStore" inconsistently. This `s/KeyStore/Keystore/g` across the codebase. | ||||
| * | keymgr: Remove unstable ErrorKind, use internal! for ArtiPath errors. | Gabriela Moldovan | 2023-06-29 | 1 | -21/+7 |
| | | |||||
| * | keymgr: Validate the individual ArtiPahtComponents of ArtiPath. | Gabriela Moldovan | 2023-06-29 | 1 | -37/+25 |
| | | | | | | This also implicitly forbids leading and trailing slashes in an `ArtiPath`. | ||||
| * | keymgr: Rephrase ArtiPath docs. | Gabriela Moldovan | 2023-06-29 | 1 | -14/+5 |
| | | | | | This updates the docs with Diziet's suggested doc improvements. | ||||
| * | keymgr: Remove ArtiPath normalization, introduce additional restrictions. | Gabriela Moldovan | 2023-06-29 | 1 | -45/+45 |
| | | |||||
| * | keymgr: Document how ArtiPath validation is actually supposed to work. | Gabriela Moldovan | 2023-06-29 | 1 | -7/+11 |
| | | |||||
| * | keymgr: Move validation requirements to the ArtiPath docs. | Gabriela Moldovan | 2023-06-29 | 1 | -12/+15 |
| | | |||||
| * | keymgr: Make ArtiPath platform-independent by always using '/' as a separator. | Gabriela Moldovan | 2023-06-29 | 1 | -10/+10 |
| | | |||||
| * | keymgr: Add tests for ArtiPath validation. | Gabriela Moldovan | 2023-06-29 | 1 | -0/+90 |
| | | |||||
| * | keymgr: Validate ArtiPath and ArtiPathComponent. | Gabriela Moldovan | 2023-06-29 | 1 | -12/+45 |
| | | |||||
| * | keymgr: Derive Into for ArtiPath and ArtiPathComponent. | Gabriela Moldovan | 2023-06-29 | 1 | -1/+3 |
| | | |||||
| * | keymgr: Define an error type for bad `ArtiPathComponents`. | Gabriela Moldovan | 2023-06-29 | 1 | -1/+18 |
| | | |||||
| * | keymgr: Derive Display for ArtiPath and ArtiPathComponent. | Gabriela Moldovan | 2023-06-29 | 1 | -3/+4 |
| | | |||||
| * | keymgr: Define `ArtiPathComponent`. | Gabriela Moldovan | 2023-06-29 | 2 | -1/+22 |
| | | | | | | | | | | | An `ArtiPathComponent` is a substring of an `ArtiPath`. An `ArtiPathComponent` will be validated according to the same rules as `ArtiPath`. In the future we can replace `HsClientSpecifier` with `ArtiPathComponent` (they both serve the same purpose except `ArtiPathComponent` is more generic). | ||||
| * | keymgr: Fix dummy keymgr doc links. | Gabriela Moldovan | 2023-06-29 | 1 | -3/+3 |
| | | | | | | `Error` is private to `dummy.rs` so let's not mention it in the docs of the public items. | ||||
| * | keymgr: Add missing dummy implementation for KeyType::arti_extension. | Gabriela Moldovan | 2023-06-29 | 1 | -0/+9 |
| | | | | | | | | | This fixes a rustdoc warning when building with: ``` cargo doc --locked --offline -p arti --no-default-features --features=full,onion-service-client ``` | ||||
| * | keymgr: Fix wrong_key_type test. | Gabriela Moldovan | 2023-06-29 | 1 | -1/+5 |
| | | | | | | The string representation of `SshKeyAlgorithm` on `main` changed between the time the tests were introduced and the time they were merged. | ||||
| * | Merge branch 'keymgr-tests' into 'main' | gabi-250 | 2023-06-29 | 2 | -0/+270 |
| |\ | | | | | | | | | keymgr: Add tests for ArtiNativeKeyStore See merge request tpo/core/arti!1337 | ||||
| | * | keymgr: Add a TODO about implementing and testing has_key_bundle. | Gabriela Moldovan | 2023-06-29 | 1 | -0/+8 |
| | | | |||||
| | * | keymgr: Add some basic insert and remove tests. | Gabriela Moldovan | 2023-06-29 | 1 | -0/+52 |
| | | | |||||
| | * | keymgr: Add assert_found! test helper. | Gabriela Moldovan | 2023-06-29 | 1 | -8/+13 |
| | | | |||||
| | * | keymgr: Add some key retrieval tests for ArtiNativeKeyStore. | Gabriela Moldovan | 2023-06-29 | 1 | -5/+54 |
| | | | |||||
| | * | keymgr: Add a gen_keys param to init_keystore. | Gabriela Moldovan | 2023-06-29 | 1 | -2/+16 |
| | | | | | | | | | | | This will enable future tests to optionally initialize the test key store with some test keys. | ||||
| | * | keymgr: Add tests for ArtiNativeKeyStore::key_path. | Gabriela Moldovan | 2023-06-29 | 1 | -0/+89 |
| | | | |||||
| | * | keymgr: Derive Debug for ArtiNativeKeyStore. | Gabriela Moldovan | 2023-06-29 | 1 | -0/+1 |
| | | | |||||
| | * | keymgr: Add tests for ssh key handling. | Gabriela Moldovan | 2023-06-29 | 1 | -0/+52 |
| | | | | | | | | | Part of #895 | ||||
| | * | keymgr: Return the key, not Box<()>. | Gabriela Moldovan | 2023-06-29 | 1 | -1/+1 |
| | | | | | | | | | | | This fixes a bug which caused the function to always return a type-erased `()` instead of the actual key! | ||||
| * | | Merge branch 'keymgr-x25519-keys' into 'main' | gabi-250 | 2023-06-29 | 1 | -28/+59 |
| |\ \ | |/ |/| | | | | | | | | | keymgr: Add support for x25519 keys. Closes #900 See merge request tpo/core/arti!1321 | ||||
| | * | keymgr: Remove unneeded error variant. | Gabriela Moldovan | 2023-06-27 | 1 | -5/+0 |
| | | | | | | | | | | | The `Unsupported` variant is no longer needed now that we support `KeyType::X25519StaticSecret`s. | ||||
| | * | keymgr: Add support for x25519 keys. | Gabriela Moldovan | 2023-06-27 | 1 | -11/+9 |
| | | | |||||
| | * | keymgr: Return a concrete type from read_ed25519_keypair. | Gabriela Moldovan | 2023-06-27 | 1 | -8/+9 |
| | | | | | | | | | | | This also fixes a bug which caused the function to always return a type-erased `()` instead of the actual key! | ||||
| | * | keymgr: Move TODO closer to the code it refers to. | Gabriela Moldovan | 2023-06-27 | 1 | -10/+9 |
| | | | |||||
| | * | keymgr: Map KeyType::X25519StaticSecret to an SshKeyAlgorithm. | Gabriela Moldovan | 2023-06-27 | 1 | -1/+1 |
| | | | |||||
| | * | keymgr: Define an SshKeyAlgorithm enum. | Gabriela Moldovan | 2023-06-27 | 1 | -2/+40 |
| | | | | | | | | | | | | | | | | | | | This previously just re-exported `ssh_key::Algorithm`. However, we will need to support x25519 keys (which aren't supported by the `ssh_key` crate), so we define our own enum for the key algorithm. In addition to the `Algorithm` variants from `ssh_key`, our enum also has an `X25519` variant. | ||||
| * | | keymgr: Downgrade "TODO hs" to "TODO HSS". | Gabriela Moldovan | 2023-06-28 | 3 | -5/+5 |
| | | | | | | | | | | | These TODOs can be deferred for now: we're not declaring the keymgr APIs stable until we add support for hidden services. | ||||
| * | | keymgr: Downgrade some TODOs to "TODO HSS". | Gabriela Moldovan | 2023-06-28 | 2 | -6/+6 |
| | | | | | | | | | These don't need to be blockers for the next release. | ||||
| * | | keymgr: Remove outdated TODOs regarding error handling. | Gabriela Moldovan | 2023-06-28 | 2 | -4/+0 |
| | | | | | | | | | These were tackled in #901. | ||||
| * | | keymgr: Implement HasKind for ArtiNativeKeystoreError. | Gabriela Moldovan | 2023-06-28 | 1 | -2/+7 |
| | | | |||||
| * | | keymgr: Implement HasKind for SshKeyError. | Gabriela Moldovan | 2023-06-28 | 1 | -2/+1 |
| |/ | |||||
| * | keymgr: Add regression test for tor_keymgr::Error recursion bug. | Gabriela Moldovan | 2023-06-27 | 1 | -0/+39 |
| | | |||||
| * | keymgr: Fix infinite recursion in Error impl. | Gabriela Moldovan | 2023-06-27 | 1 | -2/+1 |
| | | | | | | The `source` impl `tor_keymgr::Error` was just calling itself recursively. | ||||
| * | keymgr: Document why we need the StdError impl for tor_keymgr::Error. | Gabriela Moldovan | 2023-06-26 | 1 | -0/+5 |
| | | |||||
| * | keymgr: Remove AsRef<dyn StdError> trait bound and unneeded impls. | Gabriela Moldovan | 2023-06-26 | 4 | -22/+1 |
| | | | | | | | We don't really need the `AsRef<dyn StdError>` impls if we make `StdError` a supertrait of `KeystoreError` (and remove the `AsRef<dyn StdError>` trait bound). | ||||
| * | keymgr: Add the file path to SshKeyError context. | Gabriela Moldovan | 2023-06-26 | 2 | -9/+29 |
| | | |||||
| * | keymgr: Add the path to ArtiNativeKeystoreError Display impl. | Gabriela Moldovan | 2023-06-26 | 1 | -3/+3 |
| | | |||||
| * | keymgr: Replace Error with Box<dyn KeystoreError>. | Gabriela Moldovan | 2023-06-26 | 6 | -189/+74 |
| | | | | | Part of #901 | ||||
