| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
This is so a relay can build authenticated channels. Several keys/cert
are required for this that are within the key manager.
Signed-off-by: David Goulet <[email protected]>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
First, run
```
git grep -l "^edition =" |
xargs perl -i -pe 's/^edition *=.*/edition = "2024"/;'
```
Second, manually verify that all Cargo.toml files have changed,
and nothing else has changed.
Third, run cargo fmt again.
|
| | |
|
| |
|
|
| |
See #2060.
|
| |
|
|
|
|
| |
- Replaced `once_cell::sync::Lazy` with `std::sync::LazyLock`.
Signed-off-by: hashcatHitman <[email protected]>
|
| |
|
|
|
| |
- Part of a series of commits aimed at replacing all MSRV-related TODOs with a
standardized format, which should be easier to find when the MSRV is bumped.
|
| | |
|
| |
|
|
| |
- `rand::thread_rng()` has been deprecated and renamed to `rand::rng()`
|
| |
|
|
|
|
|
| |
We think that for relays, the 'override_net_params' config option is
overly broad and a footgun. We can always re-add this back later if we
want to, but for now the focus will be on exposing specific config
options for features that are okay to be changed by users.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
I don't think we'll ever need this. Users will set the directories
through the config file.
|
| |
|
|
|
| |
This is probably not what the final logger would look like, but it's a
fine placeholder for now.
|
| | |
|
| |
|
|
| |
This makes it more similar to arti.
|
| | |
|
| | |
|
| |
|
|
| |
We don't actually use it yet, but we do show it in the '--help' text.
|
| | |
|
| |
|
|
|
|
|
| |
This is a bunch of boilerplate code that we don't currently need, and
may not need in the future since we don't need to provide a lot of
library-API-level customization for `TorRelay` like we do with
`TorClient`.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
This is an override option, which we want to default to "unset".
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a big change across multiple crates since there isn't a good way
to break it up.
This changes the signature of `CfgPath::path` to:
```
pub fn path(&self, path_resolver: &CfgPathResolver) -> Result<PathBuf, CfgPathError> {
```
Making this change means that our global `CfgPathResolver` needs to be
stored in the 'arti-client' library instead of `tor-config-path`, and
must be passed through to anything that calls `path` to expand the
variables.
|
| |
|
|
|
| |
In arti this option is just a convenience function to override the
configuration option, so we'll probably want to do the same thing.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
The options are inspired by the arti cli interface.
|
| |
|
|
|
| |
Also updated other packages to get `CfgPath` directly from
`tor-config-path' instead of 'tor-config'.
|
| |
|
|
|
|
|
| |
This will enable us to store more than one `K_relaysign_ed` in the
keystore.
Closes #1692
|
| |
|
|
|
|
|
|
|
|
| |
According to its docs, `RelayIdentityKeySpecifier` was meant to be the
key specifier for the relay identity keypair, so its role prefix should
be `KS_`.
This also renames `RelayIdentityKeySpecifier` to
`RelayIdentityKeypairSpecifier` for clarity (we're about to add another
specifier here, for the public relay identity key).
|
| |
|
|
| |
Fixes a TODO.
|
| |
|
|
| |
Signed-off-by: David Goulet <[email protected]>
|
| |
|
|
| |
Signed-off-by: David Goulet <[email protected]>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The "pub" and "pub(crate)" visibility in a binary crate is essentially
the same except for the dead_code warning analysis which ignores "pub"
but will warn at "pub(crate)".
This should get fixed soon according to:
https://github.com/rust-lang/rust/issues/74970
However, for now, lets catch all this dead code :).
Part of #1674
Signed-off-by: David Goulet <[email protected]>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Simply, the lib.rs is renamed to relay.rs (containing TorRelay object)
so this crate can never be used as a library.
This is important because at the moment, we don't want to have a relay
stable API that can be used to embed relays in applications.
Closes #1674
Signed-off-by: David Goulet <[email protected]>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
At the moment, it is an empty main() acting as a place holder for this
crate to become solely a binary crate.
Write up a basic README.md in order to explain the current state. Next
commit will remove the libary component by renaming lib.rs
Part of #1674
Signed-off-by: David Goulet <[email protected]>
|
| |
|
|
|
|
|
|
| |
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`
|
| |
|
|
|
|
|
|
|
| |
Plumb through a top-level account. This doesn't have any
channel-specific, circuit-specific or stream-specific accounts yet.
tor-circmgr's and tor-hsclient's *tests* need fake account.
In arti-relay, use a dummy account for now.
|
| |
|
|
|
|
|
|
|
|
| |
Previously, arti's primary keystore was referred to as its "default"
keystore. However, "default" is inaccurate here: there is no way to
meaningfully override this "default" (the "default" store acts as the
main keystore). Throughout the codebase, we query all keystores for keys
(including the secondary ones), but only ever write to the
default/primary keystore. This is OK for now, because it enables us to
have one mutable keystore, and multiple secondary, read-only stores.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
When creating the KeyMgr, attempt to create the long-term identity key
if none are found in the KeyMgr.
Until the KeyMgr has certificate support, we can't create the
certificate. Add a TODO comment item about future work needed there.
Related to #1604
Signed-off-by: David Goulet <[email protected]>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This is the first step before creating relay key definition and storing
them into a keystore.
The KeyMgr should be passed on the ChanMgr in later commit so the
ChanMgr can use it for the authenticated channel handshake.
Part of #1604
Signed-off-by: David Goulet <[email protected]>
|