summaryrefslogtreecommitdiff
path: root/crates/tor-keymgr
Commit message (Collapse)AuthorAgeFilesLines
...
* tor-keymgr: Have KeySpecifierComponent::from_component take a refIan Jackson2023-12-071-6/+6
| | | | | Call sites are shortly going to need the component on the error path, so this function ought probably not to consume it.
* tor-keymgr: Make two errors not be CopyIan Jackson2023-12-071-1/+1
| | | | | | This is a hostage to fortune. (In a previous version of !1796 I wanted to make it untrue.)
* tor-keymgr: KeySpecifierDefault: role: allow runtime valueIan Jackson2023-12-071-15/+72
| | | | Make it possible for the role to be a field.
* tor-keymgr: KeySpecifierDefault: Use meta as strIan Jackson2023-12-071-3/+6
| | | | This saves on some stringify! and improves error checking.
* tor-keymgr: KeySpecifierDefault: fixed_path_component featureIan Jackson2023-12-071-0/+29
|
* tor-keymgr: KeySpecifierDefault: recast field loopIan Jackson2023-12-071-1/+2
| | | | | We're going to do another per-field thing that doesn't want this condition.
* tor-keymgr: KeySpecifierDefault: ctor_path featureIan Jackson2023-12-071-8/+47
|
* tor-keymgr: KeySpecifierDefault: Document attributes more formallyIan Jackson2023-12-071-1/+20
| | | | | | The `summary` attribute refers to a field in KeyPathInfo but this field isn't public. We can refer to builder, but there should be getters or something.
* tor-keymgr: KeySpecifierDefault: Move dead code allowIan Jackson2023-12-071-5/+1
|
* tor-keymgr: KeyPathInfo: Provide builder() methodIan Jackson2023-12-071-4/+11
| | | | Otherwise the KeyPathInfo rustdocs don't have a method for making one.
* tor-keymgr: Replace assert_key_specifier_rountrip macro with function (fmt)Ian Jackson2023-12-071-14/+5
| | | | Formatting churn at call sites.
* tor-keymgr: Replace assert_key_specifier_rountrip macro with functionIan Jackson2023-12-072-32/+42
| | | | The new function checks both directions. The (misspelled) macro didn't.
* tor-keymgr: provide KeySpecifierComponentViaDisplayFromStr and use itIan Jackson2023-12-072-26/+22
| | | | Now the only manual impl is TimePeriod, which is indeed special.
* ArtiPaths: derive FromStr for ArtiPath ArtiPathComponent HsNickname (fmt)Ian Jackson2023-12-071-2/+14
| | | | Mandatory horrible formatting.
* ArtiPaths: derive FromStr for ArtiPath ArtiPathComponent HsNicknameIan Jackson2023-12-071-0/+2
|
* tor-keymgr: Fix some docs warningsIan Jackson2023-12-062-5/+6
| | | | | Fixes cargo doc --locked --workspace --all-features --document-private-items
* tor-keymgr: Update wording in TODO.Gabriela Moldovan2023-12-051-1/+1
|
* tor-keymgr: Call inventory::collect in the dummy keymgr too.Gabriela Moldovan2023-12-051-0/+2
| | | | | Not calling it results in an error (it instantiates the plugin registry for our type).
* tor-keymgr: Mention KeyMgr::describe in the KeyInfoExtractor docs.Gabriela Moldovan2023-12-051-0/+3
|
* tor-keymgr: Remove outdated references to KeyDenotator.Gabriela Moldovan2023-12-051-6/+6
|
* tor-keymgr: Explain when KeySpecifierComponent should be implemented.Gabriela Moldovan2023-12-051-0/+6
|
* tor-keymgr: Abolish the KeyDenotator trait in favour of KeyPathComponent (fmt).Gabriela Moldovan2023-12-052-7/+13
|
* tor-keymgr: Abolish the KeyDenotator trait in favour of KeyPathComponent.Gabriela Moldovan2023-12-052-66/+25
|
* tor-keymgr: Use Bug instead of KeyPathInfoBuild.Gabriela Moldovan2023-12-051-6/+5
|
* tor-keymgr: Describe the key, not the specifier in the test key summaries.Gabriela Moldovan2023-12-051-5/+5
|
* tor-keymgr: Add some helpers to KeyPathInfoBuilder.Gabriela Moldovan2023-12-051-1/+84
|
* tor-keymgr: Use a BTreeMap for the extra_info.Gabriela Moldovan2023-12-051-2/+2
| | | | We probably want these values to be in the same order each time.
* tor-keymgr: Add TODO about allowing users to specify the spec_name.Gabriela Moldovan2023-12-051-2/+1
| | | | This also removes a TODO that doesn't make sense anymore.
* tor-keymgr: Update summary docs based on review.Gabriela Moldovan2023-12-051-1/+3
|
* tor-keymgr: Add a cross-reference to register_key_info_extractor.Gabriela Moldovan2023-12-051-0/+4
|
* tor-keymgr: s/register_key_validator/register_key_info_extractorGabriela Moldovan2023-12-051-1/+1
|
* tor-keymgr: Test the derived TryFrom<&KeyPath> key specifier impl.Gabriela Moldovan2023-12-051-9/+19
|
* tor-hsservice: Test the TryFrom<&KeyPath> KeySpecifier impl.Gabriela Moldovan2023-12-052-3/+4
|
* tor-keymgr: Add a module for test utilities.Gabriela Moldovan2023-12-053-0/+16
|
* tor-keymgr: Add KeyMgr::remove_with_type.Gabriela Moldovan2023-12-051-0/+18
| | | | | Sometimes we need to remove a key without knowing its concrete (Rust) type (only its `KeySpecifier` and `KeyType`).
* tor-keymgr: Make DefaultKeySpecifier generate a key info extractor as well.Gabriela Moldovan2023-12-053-1/+118
|
* tor-keymgr: Use KeySpecifierComponent instead of Display.Gabriela Moldovan2023-12-051-1/+14
|
* tor-keymgr: Add more variants to KeyPathError.Gabriela Moldovan2023-12-051-0/+13
| | | | We will need them soon.
* tor-keymgr: Make all arguments of arti_pattern optional.Gabriela Moldovan2023-12-051-8/+12
| | | | | We're going to need this soon (to match all hidden service keys, regardless of nickname, for example).
* tor-keymgr: Introduce a KeySpecifierComponent trait.Gabriela Moldovan2023-12-052-1/+16
| | | | | | | | | Now the fields of a `DefaultKeySpecifier` no longer have to implement `Display` (they need to implement `KeySpecifierComponent`). See https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1733#note_2966400 Closes #1127
* tor-keymgr: Add a function for describing a KeyPath.Gabriela Moldovan2023-12-052-2/+24
|
* tor-keymgr: Add a way of registering key info extractors using inventory.Gabriela Moldovan2023-12-054-4/+36
|
* tor-keymgr: Add types for extracting info out of a KeyPath.Gabriela Moldovan2023-12-052-2/+28
|
* tor-keymgr: Change KeyDenotator error type to KeyPathError.Gabriela Moldovan2023-12-053-10/+21
| | | | | This is a separate class of errors that deserves its own error type. We will soon use `KeyPathError` in other contexts as well.
* Bump minor versions in preparation for releaseNick Mathewson2023-12-041-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This crate is new, and gets a bump to 0.1.0. tor-log-ratelim This crate had a breaking change: tor-persist tor-llcrypto had a breaking change. These crates _are_ tor-llcrypto, or (transitively) depend on it. I am assuming that they all re-expose something from it in a way that matters: tor-llcrypto tor-bytes tor-hscrypto tor-socksproto tor-checkable tor-cert tor-linkspec tor-cell tor-proto tor-netdoc tor-consdiff tor-netdir tor-chanmgr tor-ptmgr tor-guardmgr tor-circmgr tor-dirclient tor-dirmgr tor-keymgr tor-hsclient tor-hsservice tor-hsrproxy arti-client arti-rpcserver arti-hyper
* Bump patchlevel versions in preparation for releaseNick Mathewson2023-12-041-3/+3
| | | | | | | | | | | | | | | These crates had backward-compatible changes, and get a patchlevel bump only: fs-mistrust tor-error tor-config tor-rtcompat tor-rtmock This crate exposes no non-CLI APIs, and gets a patchlevel bump only: arti
* Merge branch 'remove-impl' into 'main'Ian Jackson2023-11-301-9/+1
|\ | | | | | | | | tor-keymgr: Remove unnecessary impls for KeystoreCorruptionError. See merge request tpo/core/arti!1779
| * tor-keymgr: Remove unnecessary impls for KeystoreCorruptionError.Gabriela Moldovan2023-11-291-9/+1
| | | | | | | | | | | | | | These impl only exist because they were needed back when we didn't have the `tor_keymgr::Error` enum and all errors _had_ to implement `KeystoreError`. They are not used or required anymore, so let's remove them.
* | Merge branch 'msrv-bump-1.70' into 'main'Ian Jackson2023-11-301-1/+1
|\ \ | | | | | | | | | | | | Increase our MSRV to 1.70 See merge request tpo/core/arti!1773
| * | In every crate, change rust-version to 1.70.Nick Mathewson2023-11-281-1/+1
| | |