| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | KeySpecifier d-a macro: Say what we produce, in the docs | Ian Jackson | 2024-01-04 | 1 | -1/+17 | |
| | | | ||||||
| | * | KeySpecifier: Make KeySpecifierPattern a trait | Ian Jackson | 2024-01-04 | 3 | -11/+21 | |
| | | | | | | | | | | | | | So now .arti_pattern() is a trait method. arti#1151 item 3. | |||||
| | * | KeySpecifier d-a macro: Abolish prefix fns | Ian Jackson | 2024-01-04 | 2 | -55/+0 | |
| | | | | | | | | | | | | | | | | | arti_prefix is no longer used. Abolish prefix too. arti#1151 item 7. Closes #1147. | |||||
| | * | KeySpecifier d-a macro: Introduce SomeSpecifierPattern and use dyn | Ian Jackson | 2024-01-04 | 2 | -40/+72 | |
| | | | | | | | | | | | | | | | | | This is a better API. The implementation has less monomorphisation. arti#1151 item 2 and the patterns part of 4. Closes #1126. | |||||
| | * | KeySpecifier d-a macro: Use dyn for arti_path | Ian Jackson | 2024-01-04 | 1 | -11/+153 | |
| | | | | | | | | | | | | | | | | | | | This reduces monomorphisation. arti#1151 item 4. The commentary reflects a decision not to do arti#1151 item 9 (using fmt signature for to_component) at this time. | |||||
| | * | KeySpecifier tests: add a TimePeriod test | Ian Jackson | 2024-01-04 | 2 | -2/+37 | |
| | | | ||||||
| | * | KeySpecifierComponent: Add .fmt_pretty() method | Ian Jackson | 2024-01-04 | 1 | -1/+21 | |
| | | | | | | | | | | | | | | | Part of arti#1151 item 10. Discussion in https://gitlab.torproject.org/tpo/core/arti/-/issues/1151#note_2977278 | |||||
| | * | KeySpecifier d-a macro: Move to its own module | Ian Jackson | 2024-01-04 | 3 | -318/+336 | |
| | | | | | | | | | This is going to expand and gain private helper methods. | |||||
| | * | KeySpecifier d-a macro: insist on structs | Ian Jackson | 2024-01-03 | 1 | -1/+1 | |
| | | | | | | | | | | | We don't handle enums and we don't want to try. Put this here as documentation of this intent. | |||||
| | * | KeySpecifier d-a macro: rename from KeySpecifierDefault | Ian Jackson | 2024-01-03 | 2 | -11/+11 | |
| | | | | | | | | | arti#1151 item 1. | |||||
| * | | Remove an unneeded allow | Ian Jackson | 2024-01-02 | 1 | -2/+0 | |
| | | | | | | | | | Now d-a #27 is fixed, we don't need this. | |||||
| * | | Update to derive-adhoc 0.8 | Ian Jackson | 2024-01-02 | 1 | -1/+1 | |
| |/ | | | | | As recommended in the d-a changelog, I'm not calling this a breaking change to our APIs. | |||||
| * | rustdoc: linkify a url properly | Ian Jackson | 2024-01-02 | 1 | -2/+2 | |
| | | ||||||
| * | clippy: An an allow for fallible ed25519 conversion | Ian Jackson | 2024-01-02 | 1 | -0/+5 | |
| | | | | | | I'm not sure about this. Leaving it this way seems the most conservative choice for now. | |||||
| * | tor-keymgr: Wrap a long doc comment line. | Gabriela Moldovan | 2023-12-14 | 1 | -3/+3 | |
| | | ||||||
| * | tor-keymgr: Update docs referencing outdated SSH algo names. | Gabriela Moldovan | 2023-12-14 | 2 | -3/+3 | |
| | | ||||||
| * | tor-keymgr: Remove the TODOs about adding a protocol name registry. | Gabriela Moldovan | 2023-12-14 | 1 | -68/+3 | |
| | | | | | Diziet addressed these in #1049 | |||||
| * | tor-keymgr: Use spec.torproject.org for the SSH algo name domain. | Gabriela Moldovan | 2023-12-14 | 5 | -15/+15 | |
| | | | | | | | | | | Note: any existing x25519 or expanded ed25519 keys you might have in the keystore will become invalid (your keystore will appear corrupt, so you will need to manually delete them if you want to continue using the onion service they were originally generated for). Part of #1108 | |||||
| * | arti-client: use sub_builder for ArtiNativeKeystoreConfig | Nick Mathewson | 2023-12-13 | 1 | -0/+2 | |
| | | | | | | | | | | The sub_builder pattern changes `StorageConfigBuilder` so that instead of holding an `Option<ArtiNativeKeystoreConfig>`, it holds an `ArtiNativeKeystoreConfigBuilder`. This makes it a little more ergonomic to use from Rust, and lets us use defaults for the builder fields so that we can make them optional in our configuration. | |||||
| * | tor-keymgr: ArtiPath[Component]: Manually reformat derive lists | Ian Jackson | 2023-12-07 | 1 | -32/+8 | |
| | | ||||||
| * | tor-keymgr: ArtiPath: impl serde | Ian Jackson | 2023-12-07 | 1 | -0/+3 | |
| | | ||||||
| * | tor-keymgr: ArtiPathComponent: Use unqualified names | Ian Jackson | 2023-12-07 | 1 | -3/+3 | |
| | | | | | This makes this like the list for ArtiPath. | |||||
| * | tor-keymgr: ArtiPath[Component]: Don't DerefMut | Ian Jackson | 2023-12-07 | 1 | -3/+1 | |
| | | | | | That would allow construction of invalid paths. | |||||
| * | tor-keymgr: ArtiPath[Component]: Add some more test aspects | Ian Jackson | 2023-12-07 | 1 | -1/+10 | |
| | | | | | | | | | | Test that the FromStr and TryFrom impls give the same answers as new(). These tests dodn't even compile before Properly validate in FromStr because the derive-more generated version has a wrong error type. | |||||
| * | tor-keymgr: ArtiPath[Component]: Properly validate in FromStr | Ian Jackson | 2023-12-07 | 1 | -2/+11 | |
| | | | | | | | | As pointed out in https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1796#note_2974513 derive-more just parses like the inner type, so an unvalidated String. That is wrong. | |||||
| * | tor-keymgr: ArtiPath[Component]: Use d-a to generate various methods | Ian Jackson | 2023-12-07 | 1 | -30/+36 | |
| | | | | | Now ArtiPath too is TryFrom<String> and AsRef<str>. | |||||
| * | tor-keymgr: ArtiPath: Introduce validate_str | Ian Jackson | 2023-12-07 | 1 | -3/+8 | |
| | | | | | This makes it more like ArtiPathComponent and will allow more unification | |||||
| * | tor-keymgr: ArtiPath tests: Add a test for a multi-component path | Ian Jackson | 2023-12-07 | 1 | -2/+6 | |
| | | ||||||
| * | tor-keymgr: ArtiPath tests: separate path from component tests | Ian Jackson | 2023-12-07 | 1 | -2/+4 | |
| | | | | | | | Rename VALID_ARTI_PATH_COMPONENTS from _PATHS. These are tested for validity as components. I want to add a test for a multi-component path, so make a place to put it. | |||||
| * | tor-keymgr: ArtiPath::new: Rename a confusing variable | Ian Jackson | 2023-12-07 | 1 | -2/+2 | |
| | | | | | Rebinding inner locally like this confused me. | |||||
| * | tor-keymgr: ArtiPathSyntaxError: impl Eq | Ian Jackson | 2023-12-07 | 1 | -1/+1 | |
| | | ||||||
| * | tor-keymgr: arti_path tests: Add two TODOs | Ian Jackson | 2023-12-07 | 1 | -0/+3 | |
| | | | | | These don't seem critical to me. | |||||
| * | tor-keymgr: path errors: Add some xrefs | Ian Jackson | 2023-12-07 | 2 | -1/+9 | |
| | | ||||||
| * | tor-keymgr: ArtiPathSyntaxError: rename from ArtiPathError (fmt) | Ian Jackson | 2023-12-07 | 2 | -11/+43 | |
| | | ||||||
| * | tor-keymgr: ArtiPathSyntaxError: rename from ArtiPathError | Ian Jackson | 2023-12-07 | 5 | -38/+37 | |
| | | | | | | The previous name was ambiguous, and confusable with KeyPathError (of which it is, basically, a variant). | |||||
| * | tor-keymgr: Abolish unneeded StdResult alias in arti_path | Ian Jackson | 2023-12-07 | 1 | -6/+4 | |
| | | ||||||
| * | tor-keymgr: Move ArtiPath etc. into new module (docs links) | Ian Jackson | 2023-12-07 | 1 | -2/+6 | |
| | | | | | Fix docs link breakage. | |||||
| * | tor-keymgr: Move ArtiPath etc. into new module | Ian Jackson | 2023-12-07 | 3 | -191/+200 | |
| | | | | | Minimal changes to still compile and pass tests. | |||||
| * | tor-keymgr: KeySpecifierComponent::to_component: rename from as_component | Ian Jackson | 2023-12-07 | 1 | -7/+7 | |
| | | | | | | | Normally as_... is a cheap and non-consuming (reference to reference) conversion. to_ is better here since we don't consume, but we do allocate. | |||||
| * | tor-keymgr: Make KeySpecifierComponent::as_component fallible (fmt) | Ian Jackson | 2023-12-07 | 1 | -3/+8 | |
| | | ||||||
| * | tor-keymgr: Make KeySpecifierComponent::as_component fallible | Ian Jackson | 2023-12-07 | 1 | -28/+35 | |
| | | | | | | | | | | | This allows a principled implentation via Display. The alternative would be to have runtime panics whenever someone uses KeySpecifierComponentViaDisplayFromStr but the Display impl can produce wrong syntax (that doesn't fit in an ArtiPathComponent). Bug seems like the right error since implemnting KeySpecifierComponent implies that every value is representable in an ArtiPathComponent. | |||||
| * | tor-keymgr: Introduce InvalidKeyPathComponentValue errors (fmt) | Ian Jackson | 2023-12-07 | 1 | -2/+1 | |
| | | ||||||
| * | tor-keymgr: Introduce InvalidKeyPathComponentValue errors | Ian Jackson | 2023-12-07 | 2 | -14/+67 | |
| | | | | | | | | | This is a variant in KeyPathError, which contains the actual wrong value, and the key name. But it is also a unit struct to return from the trait impl. This replaces ArtiPathError::InvalidDenotator. | |||||
| * | tor-keymgr: Have KeySpecifierComponent::from_component take a ref | Ian Jackson | 2023-12-07 | 1 | -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 Copy | Ian Jackson | 2023-12-07 | 1 | -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 value | Ian Jackson | 2023-12-07 | 1 | -15/+72 | |
| | | | | | Make it possible for the role to be a field. | |||||
| * | tor-keymgr: KeySpecifierDefault: Use meta as str | Ian Jackson | 2023-12-07 | 1 | -3/+6 | |
| | | | | | This saves on some stringify! and improves error checking. | |||||
| * | tor-keymgr: KeySpecifierDefault: fixed_path_component feature | Ian Jackson | 2023-12-07 | 1 | -0/+29 | |
| | | ||||||
| * | tor-keymgr: KeySpecifierDefault: recast field loop | Ian Jackson | 2023-12-07 | 1 | -1/+2 | |
| | | | | | | We're going to do another per-field thing that doesn't want this condition. | |||||
| * | tor-keymgr: KeySpecifierDefault: ctor_path feature | Ian Jackson | 2023-12-07 | 1 | -8/+47 | |
| | | ||||||
