| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
| |
This effectively reverts 71e3d52f5aeb34ca7bca80053079a8c7505b99ac,
which was itself a revert of disabling this test the first time.
Sadly it still doesn't seem to be reliable. We have agreed on IRC to
disable it for now.
|
| |\
| |
| |
| |
| |
| |
| | |
arti: Make the config watcher debounce interval configurable.
Closes #1589
See merge request tpo/core/arti!2387
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, the `reload_cfg::test::watch_multiple` test would take about
3s to run. This test modifies 3 files and waits for the corresponding
`reconfigure()` events to fire. Because of the
`sleep(DEBOUNCE_INTERVAL)` in `run_watcher`, it would wind up waiting
for about 1s for each of them.
This makes the event debouncing optional, and disables it in the tests.
Closes #1589
|
| |\ \
| |/
|/|
| |
| |
| |
| | |
arti: Write the test config atomically.
Closes #1549
See merge request tpo/core/arti!2375
|
| | |
| |
| |
| | |
This reverts commit ececf6be2eaffc201666cd3413dc19c025be66de.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The flakiness from the `watch_single_file` test was caused by the race
between the config write, and the fake SIGHUP "signal" sent on
`sighup_tx`: sometimes, the sighup would get handled between creating
the config file and writing its contents. In those cases, the config
received in `TestModule::reconfigure` would be `Default::default()`,
which caused an assertion to fail (because the test is expecting to
receive the `ArtiConfig` it wrote to disk).
Closes #1549
|
| | |
| |
| |
| | |
Nothing uses this yet.
|
| | |
| |
| |
| |
| |
| | |
Including testing that uncommenting the example generates a config
with tracking enabled, and that the example low_water is the default
value for the example max.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
Tests are not entirely trivial and will come in a moment.
|
| |/ |
|
| |
|
|
|
|
|
|
|
| |
This allows us to reenable the `arti hsc` tests, which were previously
disabled due to flakiness (see #1496).
The `help` test bit rotted a bit, so I had to tweak its expected output.
Closes #1496
|
| |\
| |
| |
| |
| |
| |
| | |
RPC: Add experimental method to list SOCKS proxy addresses.
Closes #1523
See merge request tpo/core/arti!2359
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
(This is a bit trickier than I would like, but it ensures that we
never return a "not initialized yet" code.)
|
| | |
| |
| |
| |
| |
| |
| | |
We'll need this for our rpc-library code to meaningfully open SOCKS
connections.
Closes #1523.
|
| | |
| |
| |
| |
| |
| |
| | |
This type exists in the `arti` crate. It wraps and delegates to
`arti_rpcserver::RpcSession`. Subsequent commits will use it to
expose information from the `arti` crate to the RPC system; right
now it does nothing.
|
| |/
|
|
| |
`FileWatcher::watch_file` can be used with arbitrary paths.
|
| |\
| |
| |
| |
| | |
Run tests of every crate, with all features disabled
See merge request tpo/core/arti!2350
|
| | |
| |
| |
| |
| | |
Fixes compilation with
cargo test --no-default-features -p arti --features=tokio,rustls
|
| | |
| |
| |
| | |
Disabling until #1549 is fixed to unblock CI.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
The watch channel should help prevent flakiness in the tests
(`TestModule` uses `maybe_send` to only send the received config if it's
different from the previously received value. This is supposed to
prevent the tests from failing when duplicate update events are
received).
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
We need to know if `watch_configuration` is set in the descriptor
publisher reactor to know whether we should be watching the
`restricted_discovery.key_dirs` directories.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This also fixes a couple of issues with the previous implementation:
* it enables you to watch for more than just one file/extension per
directory (each directory now has a list of filters. If any of the
filters apply to the path contained in the notify::Event, the
`FilterWatcher` notifies the listeners
* it removes the list watched files from `FileWatcher`. This makes
things a lot simpler to grok: essentially, the file watcher only
ever watches directories, notifying if an "interesting" file was
changed (in our case, the interesting files are files that have a
relevant extension, such as `.auth`, or specific configuration
files, as specified by `ConfigurationSources`).
|
| | |
| |
| |
| | |
The `FileWatcher` now uses a `postage::watch` channel under the hood.
|
| | |
| |
| |
| |
| | |
The event handler will soon be made async, so we need a handle to the
runtime.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
For the most part, this is just code motion.
The only change here is that `prepare` is no longer a method on
`FileWatcher`. This decouples `FileWatcher` from `ConfigurationSources`,
enabling us to use it to watch files and directories that aren't
configuration.
|
| |/
|
|
|
| |
The `FileWatcher` doesn't contain the channel for receiving events
anymore, and `FileWatcher::event_matched` was removed at some point.
|
| |\
| |
| |
| |
| |
| |
| | |
Use std::backtrace instead of backtrace crate
Closes #1144
See merge request tpo/core/arti!2301
|
| | |
| |
| |
| |
| | |
std::backtrace::Backtrace's Display looks the same as
backtrace_rs::Backtrace's Debug
|
| | |
| |
| |
| |
| | |
Removes resolve_backtraces from rtmock since it is no longer needed as
stdlib's backtraces automatically lazily resolve without needing a &mut.
|
| | |
| |
| |
| | |
This also adds a test for it.
|
| | | |
|
| | |
| |
| |
| | |
We can just used `build_for_arti()` here.
|
| |/
|
|
|
|
|
| |
There are two error cases where the onion name isn't printed, but
previously returned `Ok(())`.
It now returns an error to exit with a non-zero status code.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| |\
| |
| |
| |
| | |
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.
|