summaryrefslogtreecommitdiff
path: root/crates/tor-keymgr/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'analyzer_windows_problems' into 'main'gabi-2502024-03-041-0/+1
|\ | | | | | | | | Fix rust-analyzer problems seen with default features on Windows See merge request tpo/core/arti!2009
| * tor-keymgr: Fix compilation on WindowsTobias Stoeckmann2024-02-291-0/+1
| | | | | | | | | | The PermissionsExt::from_mode function is not available on Windows and disabled in all other places of the file. Do so here as well.
* | keystore: Fix slugs creations on WindowsTobias Stoeckmann2024-03-011-2/+8
|/ | | | | | | The slugs used for ArtiPath must be separated by slashes, which Windows systems wouldn't do properly because paths are separated by backslashes. Implement a platform-independent way of slug creation.
* arti, arti-client, tor-keymgr: Remove keystore dir configuration.Gabriela Moldovan2024-02-211-42/+0
| | | | Closes #1202
* tor-keymgr: Pick a better name for error variable.Ian Jackson2024-02-191-1/+1
|
* tor-keymgr: Add more context to errors returned from HsId::from_slug.Gabriela Moldovan2024-02-191-5/+4
| | | | | `InvalidKeyPathComponentValue::Slug` now has to wrap a `String`, because we can't get `HsIdParse` errors as static strings.
* tor-keymgr: Add more context to InvalidKeyPathComponentValue errors (fmt).Gabriela Moldovan2024-02-191-5/+11
|
* tor-keymgr: Add more context to InvalidKeyPathComponentValue errors.Gabriela Moldovan2024-02-191-9/+7
|
* tor-keymgr: Document what context to add to invalid slug errors.Gabriela Moldovan2024-02-191-0/+7
| | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1960#note_2994317
* tor-keymgr: Downgrade a documentation TODO.Gabriela Moldovan2024-02-191-1/+1
| | | | | The tor-keymgr crate *is* documented, but could use a better README and some examples and/or usage guides.
* tor-keymgr: Remove vestigial comment.Gabriela Moldovan2024-02-191-2/+0
| | | | This removes a remnant of a now-gone TODO.
* tor-keymgr: Make InvalidKeyPathComponentValue public.Gabriela Moldovan2024-02-191-3/+4
| | | | | It appears within the public API (it is the error type returned from `KeySpecifierComponent`), so let's make it public.
* tor-keymgr: Make InvalidKeyPathComponentValue an enum.Gabriela Moldovan2024-02-191-11/+20
| | | | | | | | | Previously, `InvalidKeyPathComponentValue` was a single error type, with the error message hard-coded to "invalid key denotator". This was wrong, because this error is used for other types of invalid components too (not just for invalid denotators). Part of #1115
* tor-keymgr: Add a note about KeyPathError.Gabriela Moldovan2024-02-191-0/+10
|
* tor-keymgr: Include the ArtiPath in PatternNotMatched.Gabriela Moldovan2024-02-192-6/+3
| | | | | | | All `KeyPathError` variants now include the `ArtiPath` that caused the error. Part of #1115
* tor-keymgr: Include ArtiPath in InvalidArtiPath (fmt).Gabriela Moldovan2024-02-191-3/+13
|
* tor-keymgr: Include ArtiPath in InvalidArtiPath.Gabriela Moldovan2024-02-192-3/+10
| | | | Part of #1115
* tor-keymgr: Include the ArtiPath in InvalidKeyPathComponentValue.Gabriela Moldovan2024-02-192-4/+8
| | | | | | The offending `ArtiPath` should be included in the error. Part of #1115
* tor-keymgr: Rename {to,from}_component to {to,from}_slug.Gabriela Moldovan2024-02-193-21/+21
| | | | | | | | | Originally, these functions converted to and from `ArtiPathComponent`. In !1931, we replaced `ArtiPathComponent` with `Slug` without renaming the conversion functions. Since we're converting to and from `Slug` now, I think it makes sense to rename them too. Part of #1115
* tor-keymgr: Make the &KeystoreId getter `as_copy`.Gabriela Moldovan2024-02-191-2/+4
|
* tor-keymgr: Test that KeyMgr::list_matching returns the right descriptors.Gabriela Moldovan2024-02-191-2/+16
|
* tor-keymgr: Test KeyMgr::{get_entry, remove_entry}.Gabriela Moldovan2024-02-191-0/+27
|
* tor-keymgr: Remove a TODO.Gabriela Moldovan2024-02-191-2/+0
| | | | | I am not so sure it makes sense to unify these functions, so let's remove the TODO.
* tor-keymgr: Remove outdated reference to KeyMgr::get_with_type.Gabriela Moldovan2024-02-191-1/+1
|
* tor-keymgr: Replace KeyMgr::get_with_type with KeyMgr::get_entry (fmt).Gabriela Moldovan2024-02-191-4/+1
|
* tor-keymgr: Replace KeyMgr::get_with_type with KeyMgr::get_entry.Gabriela Moldovan2024-02-191-8/+8
| | | | Part of #1271
* tor-keymgr: Rename KeyMgr::remove_with_type to KeyMgr::remove_entry.Gabriela Moldovan2024-02-191-6/+11
| | | | Part of #1271
* tor-keymgr: Make KeyMgr::remove_with_type take a KeystoreEntry (fmt).Gabriela Moldovan2024-02-191-4/+1
|
* tor-keymgr: Make KeyMgr::remove_with_type take a KeystoreEntry.Gabriela Moldovan2024-02-191-5/+3
| | | | | | | NB: `KeyMgr::remove_with_type` will need to be renamed to `KeyMgr::remove_entry`. Part of #1271
* tor-keymgr: Derive From for KeystoreSelector.Gabriela Moldovan2024-02-191-2/+2
| | | | We will soon use this in `KeyMgr`.
* tor-keymgr: Make KeyMgr::list_matching return `KeystoreEntry`s.Gabriela Moldovan2024-02-191-2/+7
| | | | Part of #1271
* tor-keymgr: Add KeystoreEntry.Gabriela Moldovan2024-02-192-1/+18
| | | | | | | | | | This type will soon replace `(KeyPath, KeyType)` in `KeyMgr::list_matching`. The KeystoreEntry documentation mentions a couple of functions that don't exist right now (they will be added in a subsequent commit). Part of #1271
* tor-keymgr: Downgrade a TODO to a Note.Gabriela Moldovan2024-02-051-3/+3
| | | | | | | I don't think we need to do this right now, so I am downgrading this TODO. Part of #1115
* tor-keymgr: Make KeyMgr::remove return the removed key (fmt).Gabriela Moldovan2024-02-051-24/+28
|
* tor-keymgr: Make KeyMgr::remove return the removed key.Gabriela Moldovan2024-02-052-6/+10
| | | | Part of #1115
* tor-keymgr: Remove a TODO about rewriting KeyType.Gabriela Moldovan2024-02-051-8/+0
| | | | | | Not all algorithms have exactly 2 variants (`Public` and `Keypair`). For example, for `ed25519`, we need `Public`, `Keypair`, and `ExpandedKeypair`.
* tor-keymgr: Downgrade a TODO from a test.Gabriela Moldovan2024-02-051-1/+1
|
* tor-keymgr: Downgrade a TODO about the KeyType API.Gabriela Moldovan2024-02-051-1/+1
| | | | | | | The `KeySpecifier` argument isn't needed yet, so let's defer this for now. Part of #1115
* tor-keymgr: Downgrade a TODO about the dummy API.Gabriela Moldovan2024-02-051-1/+1
|
* tor-keymgr: Make KeyMgr::insert return the old key.Gabriela Moldovan2024-02-052-10/+19
| | | | Part of #1115
* tor-keymgr: Remove a TODO about get_from_store().Gabriela Moldovan2024-02-051-3/+1
| | | | | | Bailing on the first inaccessible keystore is correct. Part of #1115
* tor-keymgr: Rename KeyInfoExtractor to KeyPathInfoExtractor (fmt).Gabriela Moldovan2024-02-052-3/+3
|
* tor-keymgr: Rename KeyInfoExtractor to KeyPathInfoExtractor.Gabriela Moldovan2024-02-055-18/+18
| | | | | | This trait extracts a `KeyPathInfo`, not a `KeyInfo`. Part of #1115
* tor-keymgr: Derive getters for KeyPathInfo.Gabriela Moldovan2024-02-051-3/+1
| | | | Part of #1115
* tor-keymgr: Remove a TODO about renaming Keystore.Gabriela Moldovan2024-02-051-4/+0
| | | | | | I think the current naming is fine. Part of #1115
* tor-keymgr: Fix two docs linksIan Jackson2024-02-052-2/+2
| | | | (These were broken by recent MRs so don't need a CHANGELOG update in !1950.)
* tor-keymgr: Apply cargo fmt.Gabriela Moldovan2024-02-011-1/+0
|
* tor-keymgr: Expand the KeyAlreadyExists docs.Ian Jackson2024-02-011-0/+7
|
* tor-keymgr: Abolish get_or_generate_with_derived.Gabriela Moldovan2024-02-011-58/+1
|
* tor-keymgr: Rewrite get_or_generate() using of get() and generate().Gabriela Moldovan2024-02-011-6/+15
| | | | | We are about to remove `KeyMgr::get_or_generate_with_derived`, so this rewrites `KeyMgr::get_or_generate` without using it.