| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | |
| |
| |
| |
| |
| |
| | |
`KeyMgr` is soon going to have more fields, so now is a good time to
derive `Builder` for it.
Closes #1114
|
| |\ \
| | |
| | |
| | |
| | | |
tor-hsservice: improve Debug and serde
See merge request tpo/core/arti!1765
|
| | | |
| | |
| | |
| | |
| | | |
I found myself wanting to dump the IPT manager state in debug output
and the default Rust output was far too verbose.
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
This avoids writing "[42,\n 43,\n ...]" into the storage json,
which is (a) wasteful (b) hard to read by hand.
|
| | | |
| | |
| | |
| | | |
This will help us construct ArtiPaths
|
| | |/ |
|
| |\ \
| | |
| | |
| | |
| | | |
HSS IPT persistence - preparatory work
See merge request tpo/core/arti!1755
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
"tor-hsservice: Make note_publication_attempt a method on
PublishIptSet" broke several of these.
(Rebasing to insert this at the appropriate point causes conflicts, so
I'm leaving it here at the tip.)
|
| | | | |
|
| | | |
| | |
| | |
| | | |
We're going to need to call this on startup to reestablish existing IPTs.
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
We are going to want to call this during startup, when we don't have
an IptManager yet.
|
| | | |
| | |
| | |
| | |
| | | |
This will mean if we refer to it in more places, we'll still only have
one place to change it.
|
| | | |
| | |
| | |
| | |
| | | |
Let's avoid cluttering the core algorithm file with this, which is
going to expand.
|
| | | |
| | |
| | |
| | | |
We're going to use time_store, which works nicely with Instants.
|
| | | | |
|
| | | |
| | |
| | |
| | | |
There's a keymgr in imm now, so just use that.
|
| | | |
| | |
| | |
| | | |
As per the TODO.
|
| | | |
| | |
| | |
| | | |
This is now in fact plumbed through.
|
| | | |
| | |
| | |
| | | |
Mandatory format degradation.
|
| | | |
| | |
| | |
| | | |
Prepare for persistence.
|
| | | |
| | |
| | |
| | |
| | | |
We're going to move the last_descriptor_expiry_including_slop data out
of IptSet.
|
| | | |
| | |
| | |
| | |
| | | |
We're going to add another field here. No functional change, just
much churn.
|
| | |/
| |
| |
| |
| |
| |
| |
| | |
This struct is going to be responsible for loading and storing
some persistent state, so it makes sense for it to handle
initialisation.
This also reduces duplication.
|
| |\ \
| |/
|/|
| |
| |
| |
| | |
tor-keymgr: Add a top-level Error enum
Closes #1113
See merge request tpo/core/arti!1751
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, the `tor_keymgr::Error` type was `Box<dyn KeystoreError>`.
This forced us to impl `KeystoreError` for any error returned by the
keymgr (including those that were not coming from a `Keystore` impl).
Now, `tor_keymgr::Error` is an non-exhaustive enum and the `Box<dyn
KeystoreError>` opaque error type is only returned from `Keystore` impls
The reason we're keeping the `dyn KeystoreError` error type is because
it enables `Keystore` implementors to use their own error types. Without
it, they would have to choose from our (closed) set of error variants,
which may not be suitable for their keystore. See #901.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
It might come back.
This introduces a new bug relating to logging, but it does abolish one
of the variants of ReactorError.
|
| | |
| |
| |
| | |
IHNI why rustfmt wants to do this *now*
|
| | |
| |
| |
| |
| |
| | |
We're going have it in an variant in FatalError.
Also make it impl HasKind and have IptError delegate to that.
|
| | |
| |
| |
| | |
And explain why this isn't just a question of merging it with FatalError.
|
| |/
|
|
| |
The call to reactor.run() in publish.rs, launch(), calls warn_report.
|
| |\
| |
| |
| |
| |
| |
| | |
HSS: Send DosParams extension to introduction points.
Closes #723
See merge request tpo/core/arti!1740
|
| | |
| |
| |
| | |
It's available when the HsIntro=5 subprotocol version is present.
|
| | |
| |
| |
| |
| |
| | |
It does not help that C tor has a set of parameters and a set of
configuration options with exactly the same names which configure
the same thing in two slightly different ways.
|
| | |
| |
| |
| | |
Closes #723.
|
| | |
| |
| |
| |
| |
| | |
We want the configuration, at least, so that we can see our DoS
settings. I expect we'll also want the watcher so that we can
see _changes_ in the DoS settings.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
We only return this error if the identity key is missing from the
keystore.
This change will also help us abolish the `.role()` method on
`KeySpecifier`s (it was only needed for populating the string of a
`MissingKey` error).
|
| | |
| |
| |
| | |
We don't need this macro now that we adhoc-derive the implementation.
|
| | | |
|
| |/ |
|
| |\
| |
| |
| |
| | |
tor-hsservice: Remove and downgrade several TODO HSS
See merge request tpo/core/arti!1742
|
| | |
| |
| |
| | |
These are definitely blockers.
|
| | |
| |
| |
| | |
I don't understand what this TODO is about, so let's remove it.
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
This code was identical to that from `read_blind_id_keypair`.
|