summaryrefslogtreecommitdiff
path: root/crates/arti/src/subcommands/keys.rs
Commit message (Collapse)AuthorAgeFilesLines
* arti: keys: Simplify `run_check_integrity`hjrgrn2025-10-081-9/+7
|
* arti: keys: Improve readability of `print_check_integrity_incipit`hjrgrn2025-10-081-11/+7
|
* arti: keys: Fix typo in `run_check_integrity`hjrgrn2025-10-081-1/+1
|
* arti: keys: Rename `invalid_entry` to `expired_entry` in `run_check_integrity`hjrgrn2025-10-081-3/+3
|
* arti: keys: Add warning for unexpected invalid keystore entryhjrgrn2025-10-081-14/+16
|
* arti: keys: Improve readability of `run_check_integrity`hjrgrn2025-10-081-5/+4
|
* arti: keys: Add comment explaining why `services` cannot be droppedhjrgrn2025-10-081-0/+2
|
* arti: keys: Add comment explaining difference between `affected_keystores` ↵hjrgrn2025-10-081-0/+5
| | | | and `keystores`
* arti: keys: Refactor `get_expired_keys`hjrgrn2025-10-081-9/+6
| | | | The function now returns `Result<Vec<InvalidKeystoreEntry<'a>>>`
* arti: keys: Add integrity check for empty expired_entrieshjrgrn2025-10-081-0/+14
| | | | | | | Add a check in `run_check_integrity` to verify that the `expired_entries` collection is empty after processing all registered keystores. This should always be true, as all expired entries are expected to be removed during iteration. If not, it indicates a bug.
* arti: keys: Introduce InvalidKeystoreEntry and InvalidKeystoreEntries structshjrgrn2025-10-081-33/+74
| | | | | Replace raw tuples with named structs to reduce type complexity and improve code clarity and maintainability.
* arti: keys: Remove `filter` in favor of `retain` in `run_check_integrity`hjrgrn2025-10-081-11/+9
|
* arti: keys: Add comment explaining expired entry handling in ↵hjrgrn2025-10-081-0/+2
| | | | `run_check_integrity`
* arti: keys: Improve `run_check_integrity` functionhjrgrn2025-10-081-11/+23
| | | | | | - Fix bug where expired keys from one keystore were incorrectly associated with all keystores - Remove unnecessary clone
* arti: keys: Adapt `maybe_remove_invalid_entries` to updated ↵hjrgrn2025-10-081-14/+19
| | | | `run_check_integrity`
* arti: keys: Refactor function `display_invalid_keystore_entries`hjrgrn2025-10-081-32/+40
| | | | | | - Add `display_invalid_keystore_entries` helper function `print_check_integrity_incipit` - Add `display_invalid_keystore_entries` comment
* arti: keys: Implement `display_invalid_keystore_entries`hjrgrn2025-10-081-2/+39
| | | | | | Add initial functional implementation of `display_invalid_keystore_entries`, which processes a list of invalid keystore entries grouped by `KeystoreId` and displays them with associated error messages.
* arti: keys: Refactor `display_invalid_keystore_entries`hjrgrn2025-10-081-35/+38
| | | | | | | | | | Create the skeletal version of the new `display_invalid_keystore_entries` function and adapt `run_check_integrity` to use it. The function now takes a slice of pairs, each containing a `KeystoreId` and a vector of invalid keystore entries along with their error messages, and processes all entries internally by iterating over each keystore, instead of being called once per keystore.
* arti: keys: Refactor run_check_integrity to use keystores with IDshjrgrn2025-10-081-28/+37
| | | | | | | | | Previously, the function worked with a flat `Vec<KeystoreEntryResult<KeystoreEntry>>`. Now, it uses a structured `Vec<(KeystoreId, Vec<KeystoreEntryResult<KeystoreEntry>>)>`, grouping entries by keystore. This makes it easier to track which keystore each entry belongs to, and prepares the code for upcoming improvements.
* arti: keys: Add `keys check-integrity` CLI toolhjrgrn2025-09-041-17/+220
|
* arti: keys: Fix `display_keystore_entries` outputhjrgrn2025-08-091-0/+1
|
* arti: keys: Improve CLI output by distinguishing KeyPath variantshjrgrn2025-08-061-17/+64
| | | | | * Update `display_entry` function to handle different `KeyPath` variants * Add functions `display_arti_entry` and `display_ctor_entry`
* arti: keys: Add arti keys-rawhjrgrn2025-07-141-37/+31
| | | | | | | | | | | | | | | | | | | * CLI: Add `keys-raw` and subcommand `remove-by-path` * arti: Add `arti::subcommand::raw` for the CLI `keys-raw` * tor-keymgr: Add `ArtiNativeKeystoreError::UnexpectedRawEntry`, `ArtiEphemeralKeystoreError::NotSupported` * tor-keymgr: Add `tor-keymgr::raw` module * tor-keymgr: Add `Keystore::remove_unchecked` * tor-keymgr: Change `Keystore::list` to return `KeystoreEntry` * tor-keymgr: Add field `KeystoreEntry::raw_id` * doc: Update keys.md * doc: Add raw.md * tor-keymgr: BREAKING: `UnrecognizedEntryError::new` associated function is now only accessible within the crate `tor-keymgr` * tor-keymgr: BREAKING: `UnrecognizedEntryId` is renamed to `UnrecognizedEntry` * tor-keymgr: BREAKING: `KeyMgr::list()` and `Keystore::list()` now return `Result<Vec<KeystoreEntryResult<KeystoreEntry>>>`
* arti: keys: Fix arti keys help messagehjrgrn2025-06-231-2/+2
|
* arti: Add keys list and keys list-keystoreshjrgrn2025-06-121-0/+180