| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The `FilesystemError::Filesystem` variant was actually just for IO
errors.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This will be reused by other on-disk key stores (such as the C Tor ones
we're about to add).
I recommend reviewing this commit using
`git diff --color-moved=zebra --ignore-space-change`
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
This will be used to create relative paths representing C Tor keys.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
We're about to add a separate constructor for CTor paths.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
We are about to use this for the ctor keystore implementation too.
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This is only used for representing portions of `ArtiPath`s, so let's
rename it accordingly.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
`KeyPath::matches` now returns a boolean (because we can't return a
matching "range" for `CTorPaths`, because unlike ArtiPaths, they're not
represented as `String`s, and do not have variable parts that need to be
captured).
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
C Tor's client restricted discovery keys don't have the service hsid
encoded in the filename (the hsid of the service each key is associated
with is encoded in contents of the key file). This means that given a
key specifier like `HsClientDescEncKeypairSpecifier` (which is a wrapper
over an HsId), we can't actually compute the relative path of the key in
its `KeySpecifier::ctor_path()` implementation. To do so we would need
to access the keystore to figure out which path contains the requested
HsId, which we can't (and shouldn't!) do from within the `KeySpecifier`
impl.
This suggests the String newtype (representing a relative path) we
previously had is not a good abstraction for `CTorPath`s. Moreover,
`CTorPath` are static (they don't have dynamic components like
`ArtiPath`), so it makes more sense to model `CTorPath` as an enum.
The new `CTorPath::ClientHsDescEncKey(HsId)` variant will be used to
instruct the C Tor client keystore to find the file that contains the
specified `HsId`, while the `Service` variant will be used for hidden
service keys.
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The `KeyMgrBuilder` now returns an error if the configured keystores
don't have pairwise unique IDs. This is needed because some keymgr
operations take a `KeystoreSelector` specifying the ID of the keystore
the operation should be performed on, and assume that the keystore ID
uniquely identifies a single keystore.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The config will soon contain secondary C Tor keystore configuration too,
so the `arti` namespacing is about to stop making sense.
I recommend reviewing this commit using
`git diff --color-moved=zebra --ignore-space-change`
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
We are about to need this in `tor-keymgr`, where we're about to add a
config for C Tor service keystores (the C Tor keystore config will have
an associated `HsNickname` that specifies which of the arti hidden
services it's supposed to be used with).
|
| |\ \ \ \ \ \
| |_|_|_|/ /
|/| | | | |
| | | | | |
| | | | | | |
tor-rtmock: dyn_time tests: Test the downcast fail path too
See merge request tpo/core/arti!2500
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This will make it possible to use on a DropCounter and get a
DropCounter back.
|
| | | | | | | |
|
| | |/ / / /
| | | | |
| | | | |
| | | | | |
This will be clearer
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
docs: Add vanguard feature flag to README.
See merge request tpo/core/arti!2507
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
We now support pluggable transports, so it's not true that there's no
anti-censorship support.
|
| | | |_|_|/
| |/| | | |
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
tor-proto: memquota: Tidying up
See merge request tpo/core/arti!2508
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
No functional change, but use of ${select1 ...} will make it easier to
add more approaches.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
This was already a bit inaccurate and it's going to become more so.
|
| |\ \ \ \ \ \
| |_|_|/ / /
|/| | | | |
| | | | | |
| | | | | | |
Circmgr code motion for tests
See merge request tpo/core/arti!2513
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| |\ \ \ \ \ \
| |_|_|_|/ /
|/| | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Default allow_onion_addrs to true.
Closes #1402
See merge request tpo/core/arti!2506
|
| | | |_|/ /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This was disabled due to lack of vanguard support. Now that we support
vanguards, we should enable this by default.
Fixes: #1402
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
rpcserver: Remove TODO about optionality of params
Closes #1665
See merge request tpo/core/arti!2510
|
| | |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The spec no longer says that `params` is optional, so we can remove
the TODO about making it optional.
Closes #1665.
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
arti-client: Mark tor-hsservice a dep of onion-service-client feature.
Closes #1638
See merge request tpo/core/arti!2457
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
restricted-discovery should require tor-hsservice to be enabled.
This previously caused this command to fail:
cargo check -p arti-client --features restricted-discovery,vanguards
|
| | |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Currently, arti-client doesn't compile with just the features
experimental-api and onion-service-client enabled, because it
incorrectly depends on tor-hsservice.
This fixes that by gating the use statement behind the correct feature.
Fixes: #1638
|
| |\ \ \ \ \
| |/ / / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
tor-proto: Fix flaky circuit::test::accept_valid_sendme test.
Closes #628
See merge request tpo/core/arti!2501
|
| |/ / / /
| | | |
| | | |
| | | | |
Fixes: #628
|
| |\ \ \ \
| |_|/ /
|/| | |
| | | |
| | | | |
cargo-audit Bump our various futures-* deps to 0.3.31.
See merge request tpo/core/arti!2499
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The `cargo-audit` job is currently failing because
`futures-util 0.3.30` was yanked.
This bumps our various futures-* deps to [0.3.31].
[0.3.31]: https://github.com/rust-lang/futures-rs/commit/631aa93a598520b24e671aa3492351f516e85538?short_path=06572a9#diff-06572a96a58dc510037d5efa622f9bec8519bc1beab13c9f251e97e657a9d4ed
|