| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
Relays and onion service services/clients will both need this.
I'm marking this experimental for now; we should stabilize it before
we release onion services.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
If we didn't do this, we would need to transfrom
`EncodedLinkSpec`s into a `LinkSpec::Unrecognized`, which is not
semantically right. What's more, every user of this API wants to
consume encoded link specifiers, so encoding them early saves a
little effort.
|
| | |
| |
| |
| |
| | |
This lets us check the type of an `EncodedLinkSpec` as well, and
lets us remove an interface that took a raw u8.
|
| | |
| |
| |
| |
| |
| | |
This commit adds functions to convert between LinkSpec and
EncodedLinkSpec, and refactors their read/write implementations a
bit to avoid code duplication.
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
Previously, we only accepted an OwnedCircTarget, which would have
kept us from getting a circuit that was aimed at a specialized
CircTarget that gave us LinkSpecs in a raw order.
|
| | |
| |
| |
| | |
This is pure code movement.
|
| | |
| |
| |
| |
| |
| | |
This change is necessary so that we can build Extend2 messages
that have their LinkSpecs appear in a verbatim order as provided
in an INTRODUCE2 message or in a HS descriptor.
|
| |\ \
| |/
|/|
| |
| | |
netdoc: Rename `ParseError{Kind, Source}` to `NetdocError{Kind, Source}`.
See merge request tpo/core/arti!1176
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`parse_decrypt_validate` was marked as experimental because it was
unclear if the newly added `BadTimeBound` error kind belongs in
`ParseErrorKind`. However, we have since renamed `ParseErrorKind` to
`NetdocErrorKind` and decided to keep the new variant, so this API
doesn't need to be experimental anymore.
Closes arti #852
Signed-off-by: Gabriela Moldovan <[email protected]>
|
| |/
|
|
|
|
|
|
|
|
|
| |
`ParseErrorSource` was originally meant to represent a parsing error,
this enum has since gained some variants that aren't really parsing
related (`Signature`, `CertSignature`, `UntimelyDescriptor`).
Since this error type is now used for general-purpose netdoc errors,
let's rename `ParseError{Kind, Source}` to `NetdocError{Kind, Source}`.
Signed-off-by: Gabriela Moldovan <[email protected]>
|
| |\
| |
| |
| |
| | |
bump to latest version of bumpalo to appease cargo_audit.
See merge request tpo/core/arti!1175
|
| |/ |
|
| |\
| |
| |
| |
| |
| |
| | |
Downgrade and clarify message about dir replacment time.
Closes #839
See merge request tpo/core/arti!1171
|
| | |
| |
| |
| | |
Closes #839
|
| |\ \
| |/
|/|
| |
| | |
print both static sqlite/tls when 'static' feature is used
See merge request tpo/core/arti!1169
|
| | | |
|
| |\ \
| |/
|/|
| |
| |
| |
| | |
Update deps
Closes #844 and #841
See merge request tpo/core/arti!1170
|
| | | |
|
| | | |
|
| | | |
|
| |/ |
|
| |\
| |
| |
| |
| | |
tor-netdir: Shuffle the list of HS dirs used for downloading descriptors.
See merge request tpo/core/arti!1155
|
| |/
|
|
|
|
|
|
| |
We'll probably need the hsdir list to be shuffled deterministically for
testing purposes (this might be desirable, for example, when we write a
test for HS descriptor download retries).
Signed-off-by: Gabriela Moldovan <[email protected]>
|
| |\
| |
| |
| |
| |
| |
| | |
Refactor RPC once more; institute capabilities-style authentication; expose a Client.
Closes #820
See merge request tpo/core/arti!1160
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Now there can be one of each, since we want references and handles
to be conceptually separate.
(The alternative would be to say that an operation either "returns a
handle" or "returns a reference (which may become a handle) unless a
handle already exists.")
|
| | |
| |
| |
| |
| | |
This fake version is completely silly, but it will do the job until
we figure out our MPL2 concerns.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
The generational-arena crate is distributed under MPL-2.0,
so we need to allow it.
I believe that this license is fine and does not interfere with
our code or our users; the reviewer should double-check.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
To me, "Session" suggests that we're authenticated, when we are
not necessarily authenticated. Also, we may eventually want to have
some kind of persistent session object; if we do, then we'll want
Connections to be separate.
|
| | |
| |
| |
| |
| |
| | |
(This is the correct capabilities-based behavior. For now it will only
work if the TorClient uses a PreferredRuntime, but with luck we will
find a solution for #837 soon.)
|
| | |
| |
| |
| |
| |
| | |
See the comments on `TypedAddr` for some explanations about
why this is so tricky. Thanks to @diziet for helping me figure
this out.
|
| | | |
|
| | |
| |
| |
| |
| | |
Because of #837, we won't be able to work with _every_ TorClient<R>,
so I'm only going to be using TorClient<PreferredRuntime> for now.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Now there's a module in `arti` that runs the loop for an RPC
listener. The part of the old `listener` module that made
the framed connections is now part of the `Session` object.
There is now yet another a temporary location for the pipe; we
should pick something better. At least now it's configurable.
|
| |/
|
|
|
|
|
|
|
| |
In the future, this will probably hold more data as well, like a
TorClient and some configuration info.
The TorClient will present an issue; I've made comments about that.
Closes #820
|
| |\
| |
| |
| |
| | |
hs-client: Use a real HsDesc instead of an unparsed string.
See merge request tpo/core/arti!1153
|
| | |
| |
| |
| | |
Signed-off-by: Gabriela Moldovan <[email protected]>
|
| | |
| |
| |
| | |
Signed-off-by: Gabriela Moldovan <[email protected]>
|
| | |
| |
| |
| | |
Signed-off-by: Gabriela Moldovan <[email protected]>
|
| | |
| |
| |
| |
| |
| | |
lifetime configurable.
Signed-off-by: Gabriela Moldovan <[email protected]>
|
| | |
| |
| |
| | |
Signed-off-by: Gabriela Moldovan <[email protected]>
|
| |/
|
|
|
|
|
|
|
|
| |
The `HsClientSecretKeys` stored in the HS client connection context only
have the secret keys. Certain APIs (such as `HsDesc::parse`) expect a
keypair (both `HsClientDescEncKey` and `HsClientDescEncSecretKey`). This
`From` impl makes it possible to get a `HsClientDescEncKey` out of
`HsClientDescEncSecretKey`.
Signed-off-by: Gabriela Moldovan <[email protected]>
|
| |\
| |
| |
| |
| |
| |
| | |
Lots more dirmgr log messages
Closes #803
See merge request tpo/core/arti!1163
|
| | |
| |
| |
| |
| |
| | |
This is the first version to impl Value for String.
With luck, this will get minimal_versions CI passing.
|