| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This will make it easier to replace `ArtiPathComponent` with `Slug`
later down the line.
Note this changes the syntax rules of `ArtiPathComponent`:
* previously `ArtiPathComponent`s could be unicode strings,
(now they are lowercase ASCII alphanumerics, plus `-`, `_`)
* previously `ArtiPathComponent`s couldn't start with `-` or `_`,
but now they can
Part of #1193, #1092
|
| |
|
|
|
|
| |
We are about to replace `ArtiPathComponent` with `Slug`, but `Slug`s
don't support `.`, so let's strip the `.onion` suffix before encoding it
in the `ArtiPath`.
|
| |
|
|
| |
Closes #1215
|
| |\
| |
| |
| |
| | |
tor-keymgr: Abolish ArtiNativeKeystoreConfig::expand_keystore_dir.
See merge request tpo/core/arti!1867
|
| | |
| |
| |
| |
| |
| | |
This resolves a `TODO HSS` in arti-client.
Part of #1187
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
We are about to need this implementation.
|
| |/
|
|
|
|
| |
If you derive `KeySpecifier` and forget to import `KeySpecifierPattern`
you get a confusing error. It's better to let the macro import (or fully
qualify) the necessary types from tor-keymgr.
|
| | |
|
| |\
| |
| |
| |
| |
| |
| | |
KeySpecifier improvements
Closes #1126, #1147, and #1151
See merge request tpo/core/arti!1851
|
| | |
| |
| |
| |
| | |
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1851#note_2981473
|
| | |
| |
| |
| |
| |
| |
| | |
Swap the docs for new_any and arti_pattern to the right methods!
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1851#note_2981475
|
| | | |
|
| | |
| |
| |
| | |
This *is* the spec name.
|
| | |
| |
| |
| | |
Finishes arti#1151 item 10.
|
| | |
| |
| |
| | |
This also passes the information we'll need to populate extra_info.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
This will make the macro work if call sites rebind Result.
|
| | |
| |
| |
| |
| | |
The KeyInfoExtractor impl is still misindented but we'll change that
when we replace it.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Now the only place that knows how to do all this is the one place in
the macro.
The indentation is -4 compared to previously, because we're going to
remove the wrapping with paste::paste! later. It's convenient to do
this reindent now, while we're rewriting it.
arti#1151 item 5.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
This can only happen if we tried to parse an ArtiPath as the wrong
kind of KeySpecifier, which shouldn't happen very often.
If it does, the pattern isn't that interesting. Which is just as
well, since we're about to make it a bit harder to obtain it in the
place where this error is going to be constructed.
|
| | |
| |
| |
| |
| |
| | |
Where we wanted this, use derive_more::Constructor isntead.
arti#1151 item 6.
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
So now .arti_pattern() is a trait method.
arti#1151 item 3.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
arti_prefix is no longer used. Abolish prefix too.
arti#1151 item 7.
Closes #1147.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
This is a better API. The implementation has less monomorphisation.
arti#1151 item 2 and the patterns part of 4.
Closes #1126.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
Part of arti#1151 item 10.
Discussion in
https://gitlab.torproject.org/tpo/core/arti/-/issues/1151#note_2977278
|
| | |
| |
| |
| | |
This is going to expand and gain private helper methods.
|
| | |
| |
| |
| |
| | |
We don't handle enums and we don't want to try.
Put this here as documentation of this intent.
|
| | |
| |
| |
| | |
arti#1151 item 1.
|
| |/
|
|
| |
Now d-a #27 is fixed, we don't need this.
|
| | |
|
| |
|
|
|
| |
I'm not sure about this. Leaving it this way seems the most
conservative choice for now.
|
| | |
|
| | |
|
| |
|
|
| |
Diziet addressed these in #1049
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
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.
|