| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
Remaining formatting churn.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
And also instance_peek_storage, which needs to share some code, so
determined the shape of this implementation.
Make StateDirectory have the (one) field we need.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
These are the straightforward methods which, given a CheckedDir,
perform the relevant operation.
Make InstanceStateHandle have the necessary fields.
Constructing an InstanceStateHandle is a bit complex and will come in
a moment.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
In practice, allowing Bug here was quite inconvenient for everyone.
I think very few call sites will want to throw anything interesting.
If they *do* want to cause an error, without panicking, they could
write a syntactically invalid slug.
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
state_dir doesn't support a "shared read-only" mode, so it needs an
error.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Introduce a Bug variant.
Then, use it for conversions from BadSlug. See the comment for why I
think this is appropriate.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
You don't need to consume a Mistrust to get a CheckedDir - you use a
Verifier and then something clones it for you. So StateDirectory::new
should take &Mistrust.
And instance_peek_storage needs T to be deserialisable!
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
This is rather more serious than many deletions - it wipes out the
whole directory. And this name goes better with purge_instances.
|
| | | | |
| | | |
| | | |
| | | | |
The formatting will be normalised roughly as we go.
|
| | | | |
| | | |
| | | |
| | | | |
Now we get log messages about what we're reading/writing.
|
| |/ / / |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
tor-keymgr: Replace ArtiPathComponent with Slug
Closes #1193 and #1092
See merge request tpo/core/arti!1931
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
Service nicknames are represented by `HsNickname`, so let's
rename `HsClientSpecifier` to `HsClientNickname`.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This also removes a TODO regarding adding a `Nickname` type for
representing `HsClientSpecifier` and `HsNickname` (we don't need it if
`Slug`s are non-empty).
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1931#note_2990227
|
| | | | |
| | | |
| | | |
| | | | |
This also fixes a bug in `HsId::from_component`.
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
It was previously possible to construct an `HsNickname` out of an empty
string using the `FromStr` impl.
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
These tests belong in tor_persist now.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
`ArtiPathComponent`s are really just `Slugs`.
Part of #1193, #1092
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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`.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We represent `HsNickname` as a `Slug` instead of an `ArtiPathComponent`
(we are about to remove the latter).
Part of #1092
|
| |/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The internal representation of `HsNickname` will soon be `Slug`,
and nicknames can contain hyphens, so let's add `-` to the allowed
charset.
Part of #1092
|
| |\ \ \
| |/ /
|/| |
| | |
| | | |
Upgrade to strum 0.26
See merge request tpo/core/arti!1937
|
| |/ / |
|
| |\ \
| | |
| | |
| | |
| | | |
slug: Provide BadSlug::EmptySlugNotAllowed
See merge request tpo/core/arti!1933
|
| | | | |
|
| |\ \ \
| |/ /
|/| |
| | |
| | | |
fs_mistrust: Provide CheckedDir::make_secure_dir
See merge request tpo/core/arti!1927
|
| |/ /
| |
| |
| |
| |
| | |
state_dir wants this, to descend into subdirectories.
I think the implementation could be improved - see the TODO.
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
tor-hsservice: Abort any pending desc uploads if shutting down.
Closes #1253
See merge request tpo/core/arti!1921
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`Reactor::upload_for_time_period` now exits as soon as the Reactor is
dropped (its upload tasks check if `shutdown_tx` was dropped before
proceeding).
Closes #1253
|
| | | |
| | |
| | |
| | |
| | | |
This error will be returned if an upload is aborted because the reactor
shutting down.
|
| |/ /
| |
| |
| | |
Part of #1253
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
HSS: Mark an Ipt as faulty if it fails continuously for 15 minutes.
Closes #1248
See merge request tpo/core/arti!1915
|
| | | |
| | |
| | |
| | | |
Closes #1248.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
fs_mistrust: Expose CheckedDir::verifier
See merge request tpo/core/arti!1928
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
I'm not sure why this isn't public. It seems like an obviously
reasonable transformation.
If I as author of !1927 had been an external contributor, I could have
worked around the lack of .make_secure_directory() if .verifier() had
existed. So I think exposing it would be useful.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
TryIntoSlug
See merge request tpo/core/arti!1922
|