| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This removes a mostly-unnecessary struct holding the state of an
`OnionService` or `RunningOnionService`. It only exists because I wanted
to reduce the duplication of the `OnionService` and
`RunningOnionService` fields.
I am removing it because `OnionService` will soon become a builder, and
this inner structure is making it difficult to create an ergonomic
builder API (if we keep `OnionServiceState`, the builder fields won't
map 1:1 to the fields of the build `OnionService` type).
Note: this commit intentionally a bit misformatted to make reviewing
easier. The reformatting will come in a future commit.
|
| |\ \
| | |
| | |
| | |
| | | |
UnverifiedChannel: Clarify check's peer_cert
See merge request tpo/core/arti!2260
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
This commit clarifies the documentation of the `peer_cert` parameter in
the `UnverifiedChannel::check` function, in order to reflect that it
represents the certificate presented during the ServerHello in the TLS
handshake and not in the in-protocol CERTS cell.
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| | |
This commit fixes a bug in the `ClientCirc::extend_ntor` function, which
currently returns a `Error::MissingId(Ed25519)` in the case that no RSA
identity has been found in the accompanying channel target.
This behavior is obviously wrong, because a missing RSA identity should
yield a `Error::MissingId(Rsa)`.
|
| | | |
|
| |\ \
| | |
| | |
| | |
| | | |
arti: Add a keymgr feature.
See merge request tpo/core/arti!2257
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The `arti hsc` subcommand can't run without keymgr support.
Previously, it relied on `tor-keymgr/keymgr` being enabled indirectly by
its dependencies, via the `experimental` feature. We need to be able to
enable this feature in `arti` without relying on `experimental` (because
`arti hsc` will eventually be made non-experimental).
Part of #1487
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
Adding a `keymgr` feature here will enable us to detect if `arti` is
running without keymgr support. This is needed for the correct handling
of subcommands that require keymgr support (such as the `arti hsc`
subcommand).
|
| |\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | | |
Fix fs_mistrust error messages and some misnamed error variants
Closes #1473
See merge request tpo/core/arti!2253
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
Part of #1473
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
rustfmt didn't want to fix this, for some reason.
|
| |/ /
| |
| |
| |
| | |
Otherwise arti-client fails to build with `-no-default-features
--features onion-service-client,experimental-api`.
|
| |\ \
| | |
| | |
| | |
| | | |
tor-hsservice: Remove dead code from the descriptor publisher
See merge request tpo/core/arti!2251
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
This should give us some confidence that we are not accidentally
discarding results we should actually be using.
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2251#note_3046219
|
| | | | |
|
| | | |
| | |
| | |
| | | |
This also makes the publisher exit if the netdir event stream ends.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It is OK to discard the response string (the response is validated
below where we call `DirResponse::into_output_string()`).
(Perhaps we should just make `DirResponse::check_ok()` public. That way,
we could validate the response without having to handle its output
string).
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
This is being reimplemented as #1292
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
This removes a couple of unimplemented functions.
These were supposed to be the starting point for #1217, but we won't be
implementing that any time soon.
|
| | | |
| | |
| | |
| | | |
Note: #1217 is still open and we may want to implement it at some point.
|
| |/ /
| |
| |
| |
| |
| |
| |
| | |
As per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2225#note_3043992
We have an example for how to use arti-client with hyper 1.x, but I
don't think we need to to mention that here.
|
| |\ \
| | |
| | |
| | |
| | | |
tor-keymgr: Use collect_tuple in TimePeriod::from_slug.
See merge request tpo/core/arti!2248
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
The previous approach was buggy: collecting the parts of the time period
into an `ArrayVec` of length 3 would panic if the number of parts was
greater than 3.
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This test currently fails because we have a bug in `TimePeriod`'s
`from_slug()` implementation. `TimePeriod::from_slug()` splits the slug
by `_`, and attempts to collect the parts into an `ArrayVec` of length
3. This is wrong, because the `collect()` will panic if there are more
than 3 parts.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
tor-hscrypto: Implement FromStr for HsClientDescEncKey.
See merge request tpo/core/arti!2246
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2246#note_3045656
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We will use this impl for parsing the authorized clients of a hidden
service running in "restricted discovery" mode.
NB: "Restricted discovery" is the new terminology for "services that
require client authorization", i.e. services that implement "client
authorization" as described in rend-spec HS-DESC-ENC[0]. Note we haven't
fully transitioned to the new terminology yet (see #1476).
Part of #1292
[0]: https://spec.torproject.org/rend-spec/hsdesc-encrypt.html#HS-DESC-SECOND-LAYER
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I don't think we need a separate wrapper type for displaying
`HsClientDescEncKey` keys in the "C Tor format"
(`<auth-type>:<key-type>:<base32-encoded-public-key>`).
I think this should be the canonical string representation of
`HsClientDescEncKey`, so I'm removing the `display_authorized_client`
function and corresponding `DisplayAuthorizedHsClientDescEncKey` wrapper
type.
|
| |/ / / |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
Update to derive-deftly 0.14
See merge request tpo/core/arti!2241
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
This removes the deprecated syntaxes. Updating now will prevent us
re-introducing the old syntaxes, which we updated in arti!2209.
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
Fix or allow warnings that show up in beta
See merge request tpo/core/arti!2244
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
See
https://github.com/rust-lang/rust-clippy/issues/13001
I think it's OK to change this in our tree, nevertheless.
|