| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
We're about to use this (in the publisher reactor).
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The publisher logs a nice `info!` message when it receives the shutdown
signal. The publisher can infer that the service is shutting down from
the errors received on its various receiver channels (i.e. from the
errors that suggest the sender was dropped), but listening for the
shutdown signal is nicer.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This will be used by the descriptor publisher soon (we want to abolish
its `ReactorError` altogether, and to do that, we need to get rid of
`ReactorError::ShuttingDown`. `ShuttingDown::Terminate` happens to be a
suitable replacement).
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This moves us one step closer to removing ReactorError in favour of
FatalError (see the TODO HSS above ReactorError for more details).
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Previously, this would return `ReactorError::PublishFailure` if the
upload failed. However, that error wasn't used for anything other than
logging.
Instead of returning the error, we now log it inside
`upload_descriptor_with_retries` and return an `UploadStatus` describing
the upload outcome. This will enable us to abolish
`ReactorError::PublishFailure` (and eventually replace `ReactorError`
with `FatalError`).
|
| | | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | | |
The failure to build a descriptor out of seemingly valid parts is an
internal (irrecoverable) error.
|
| |\ \ \ \ \
| |/ / / /
|/| | | |
| | | | |
| | | | | |
hscrypto: Remove a "TODO HSS" about a no-longer-unused type.
See merge request tpo/core/arti!1817
|
| | | |/ /
| |/| | |
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
hsproxy: warn on some dubious configurations
Closes #1154
See merge request tpo/core/arti!1822
|
| | | | | | |
|
| | | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | | |
Specifically, warn about non-private target addresses
and onion services with no forwarding rules at all.
Removes some TODO HSS comments and closes #1154.
|
| |\ \ \ \
| |_|_|/
|/| | |
| | | |
| | | | |
arti: Use warn_report on anyhow::Error in onion_proxy
See merge request tpo/core/arti!1820
|
| | |/ /
| | |
| | |
| | | |
This was made possible by !1818.
|
| |\ \ \
| |/ /
|/| |
| | |
| | | |
tor-cell: Remove a now-unneeded allow(unused).
See merge request tpo/core/arti!1816
|
| | |/ |
|
| |\ \
| | |
| | |
| | |
| | | |
llcrypto: make "traits" module present unconditionally.
See merge request tpo/core/arti!1815
|
| | |/
| |
| |
| | |
Removes a TODO HSS, since this trait is generally useful.
|
| |\ \
| |/
|/|
| |
| |
| |
| | |
Enable use of warn_report etc with anyhow::Error
Closes #1157
See merge request tpo/core/arti!1818
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
This will let us impl for dyn StdError.
|
| | |
| |
| |
| |
| | |
This impl can only compile for Self: Sized. This will let us remove
the Sized bound from the trait itself.
|
| | |
| |
| |
| |
| |
| | |
We're going to need to make change to this trait which would be
breaking for out-of-crate implementors. This should have been sealed
all along.
|
| |\ \
| | |
| | |
| | |
| | | |
Fix a clippy lint
See merge request tpo/core/arti!1814
|
| | |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
warning: consider adding a `;` to the last statement for consistent formatting
--> crates/tor-circmgr/src/build.rs:162:13
|
162 | handshake_res = circ.create_firsthop_ntor(ct, params).await
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add a `;` here: `handshake_res = circ.create_firsthop_ntor(ct, params).await;`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#semicolon_if_nothing_returned
|
| | |
| |
| |
| | |
This is now in the spec, with torspec!236.
|
| |\ \
| | |
| | |
| | |
| | | |
Resolve several TODO HSS items in hsrproxy
See merge request tpo/core/arti!1809
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
(These are the ones about warning on questionable configuration
choices.)
|
| | | |
| | |
| | |
| | |
| | | |
"We might someday want to do X" does not really rise to the level of
a "must-fix".
|
| | | |
| | |
| | |
| | |
| | | |
We separate these from our failures to connect to a local proxy,
since that is a much more common error.
|
| | | |
| | |
| | |
| | |
| | | |
See arti#1153 for followup work here. The current behavior is IMO
a decent default.
|
| | | |
| | |
| | |
| | | |
See torspec!237
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
We'll use this for logging.
|
| |\ \ \
| |_|/
|/| |
| | |
| | |
| | |
| | | |
tor-hsservice: Publish the IptPublishSet we called note_publication_attempt on
Closes #1097
See merge request tpo/core/arti!1805
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
This line is too long.
|
| | | |
| | |
| | |
| | |
| | | |
We already log the outcome of the HsDir upload in the function that
calls this code.
|
| | | |
| | |
| | |
| | | |
This also wraps the line.
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Previously, it was possible for the `IptPublishSet` used to generate the
descriptor and the `IptPublishSet` `note_publication_attempt` to
differ. Now, the publisher generates the descriptor using the same
`IptPublishSet` it calls `note_publication_attempt` on.
Note that as a consequence, the publisher generates a new descriptor
just before _each_ HsDir upload. This means each HsDir could, in theory,
receive a different descriptor (not just in terms of revision-counters,
but also with a different set of IPTs). It may seem like this could lead
to some HsDirs being left with an outdated descriptor, but that's not
the case: after the upload completes, the publisher will be notified by
the ipt_watcher of the IPT change event (if there was one to begin
with), which will trigger another upload job.
Previously, the publisher would only generate a single descriptor for
each time period (all HsDirs in a given time period would receive the
same descriptor).
Closes #1097
|
| | | |
| | |
| | |
| | |
| | |
| | | |
This was previously in `TimePeriodUploadResult`. We will soon have
different revision_counter for each `HsDirUploadResult`, so let's
preemptively move the field there.
|
| | | | |
|
| | | |
| | |
| | |
| | | |
We're going to need to clone it soon.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`generate_revision_counter` and `create_ope_key` don't use anything from
`self` other than `imm`, so they might as well be methods on
`Immutable`. This change is needed because we're soon going to need to
use `generate_revision_counter` from an associated `Reactor` function
(where we don't have `self`).
|