| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
| |
Mostly relating to typos and dependencies.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
This contains configuration types that are shared between arti and
arti-rely.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This commit executes maint/add_warning with the just added change to
deny string slices except in tests.
I recommend auditing this by checking out the previous commit followed
by running the script yourself and then verifying that the diff is
identical to this commit.
This commit makes cargo clippy fail. We will add exceptions in the next
commit.
|
| |
|
|
|
|
|
|
|
| |
This currently does not actually export any metrics, but puts the
infrastructure in place to do so.
This adds the `experimental`, `__is_experimental`, etc features to
arti-relay. I presume we want to do that in the long term, but I'm not
100% sure on that.
|
| |
|
|
|
|
|
|
|
|
| |
This trickles down to the tor-proto channel handshake code. But, the
real need is in the channel builder in order to validate the outbound
channel target.
Fixes #2440
Signed-off-by: David Goulet <[email protected]>
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
We need the advertised addresses for the NETINFO cell when opening a
relay channel. Keep them in the TorRelay object so we can pass them to
the ChanMgr channel handler.
This will also help with config reload where only the local values in
TorRelay will need to be updated.
Signed-off-by: David Goulet <[email protected]>
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Example:
```toml
[relay.advertise]
ipv4 = []
ipv6 = ["[10::]:10"]
```
```text
Error: Failed to resolve configuration
[...]
The list is empty for key "default.relay.advertise.ipv4" in [...]
```
|
| | |
|
| | |
|
| |
|
|
| |
We don't plan to use the builders.
|
| |
|
|
|
| |
arti-relay has required config options, which means that
`TorRelayConfig` cannot have a default.
|
| | |
|
| | |
|
| |
|
|
| |
Run maint/add_warning
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
- Replaced `once_cell::sync::Lazy` with `std::sync::LazyLock`.
Signed-off-by: hashcatHitman <[email protected]>
|
| |
|
|
|
|
|
| |
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 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.
|
| |
|
|
|
| |
Also updated other packages to get `CfgPath` directly from
`tor-config-path' instead of 'tor-config'.
|
| |
|
|
| |
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]>
|
| |
|
|
|
|
|
|
| |
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`
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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]>
|
| | |
|
|
|
This adds the basic TorRelayConfig object along a builder in order to
create a TorRelay object.
At this commit, the configuration object only holds a "StorageConfig"
which is a simple starting point which will allow to expand to a KeyMgr
and then a ChanMgr along more configuration.
There is also no custom Error for the crate at this point.
Fixes #1534
Signed-off-by: David Goulet <[email protected]>
|