summaryrefslogtreecommitdiff
path: root/crates/arti/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * | arti: Try to document some test helpers.Nick Mathewson2023-10-031-1/+18
| | |
* | | arti: Lower some over-broad #allows in onion_proxy.rsNick Mathewson2023-10-051-4/+2
| | |
* | | arti: Actually launch the onion service code.Nick Mathewson2023-10-051-0/+9
| | |
* | | arti: functions to configure and launch actual onion service proxies.Nick Mathewson2023-10-051-3/+82
|/ /
* | Add/clarify comments about name duplication.Nick Mathewson2023-10-031-1/+1
| |
* | arti: make sure nicknames in builders match (or are absent)Nick Mathewson2023-10-031-7/+16
| |
* | arti: Fix up the example config to use the new onion_services format.Nick Mathewson2023-10-031-6/+5
| |
* | arti: in onion service builder, rename "transports" to "services"Nick Mathewson2023-10-031-4/+3
| | | | | | | | The old name was a copy-paste error.
* | arti: Make onion_services serialize as a map.Nick Mathewson2023-10-031-0/+40
| | | | | | | | This lets us write `[onion_services.allium_cepa]`.
* | arti: Make onion_service configuration option pluralNick Mathewson2023-10-032-5/+5
| |
* | hss: Rename the "name" config field to "nickname".Nick Mathewson2023-10-031-1/+1
| |
* | Note that we *do* need to actually test the onion service config.Ian Jackson2023-10-031-1/+1
| |
* | arti: Add a list of [[onion_service]]s to the config.Nick Mathewson2023-10-033-2/+91
| | | | | | | | There are no tests for parsing it yet.
* | arti: add a set of OnionServiceProxyConfig types.Nick Mathewson2023-10-032-0/+60
|/ | | | | These don't yet attach to the rest of the ArtiConfig, or actually launch any onion services, but they're a start.
* Add cognitive-complexity exceptions for clippy.Nick Mathewson2023-09-051-0/+2
| | | | I have no idea why these became necessary.
* arti tests: Suppress a lint locallyIan Jackson2023-09-051-1/+2
| | | | | There's a complaint (seen in a CI build log) about over-eager iterator item cloning. This is a perf complaint and not very relevant in tests.
* Bump to trust-dns-proto 0.23.0Nick Mathewson2023-09-051-4/+4
|
* Run maint/add_warning to add lint block everywhereIan Jackson2023-08-232-0/+2
|
* arti::cfg tests: Use fold to make nightly clippy happierNick Mathewson2023-08-221-4/+5
|
* arti: Use ConfigurationSources::try_from_cmdlineIan Jackson2023-08-071-3/+3
| | | | | | | | | | This will allow us to proceed if * the default config file locations can't be established (eg due to failure of the `directories` crate), but * configuration files are explicitly specified, so the defaults wouldn't be used
* arti: Add context to default config files error messageIan Jackson2023-08-071-1/+1
| | | | | | | | | | | | Improves the error mesage in #989 somewhat. Before: target/debug/arti: error: Can't construct project directories to resolve a path element After: target/debug/arti: error: identify default config file locations: Can't construct project directories to resolve a path element
* Run add_warnings on all files.Nick Mathewson2023-08-042-4/+4
|
* Fix typosDimitris Apostolou2023-07-222-10/+10
|
* arti cfg tests: Add keystore to example config.Gabriela Moldovan2023-07-132-14/+22
| | | | Closes #939
* arti config: Remove extraneous whitespace.Gabriela Moldovan2023-07-131-5/+5
|
* arti-client: Use the config struct from tor-keymgr.Gabriela Moldovan2023-07-131-1/+1
|
* Run maint/add_warning to actually apply new lint allowsIan Jackson2023-07-104-0/+4
|
* Throughout: Use *_report!() macros for reporting Errors.Nick Mathewson2023-07-075-16/+15
| | | | | | | | | | | | | | | I identified the cases to replace by searching for the string `.report()`. There are a few that I didn't change: * A couple of cases that used anyhow::Error, * One case that reported two Errors. * Two cases in `tor_hsclient::err` that just did `error!("Bug: {}")`. I have also not audited the cases in `tor-hsclient` where we're using `tor_error::Report` manually. Nonetheless, closes #949.
* Run add_warning to remove `missing_panics_doc` deny.Nick Mathewson2023-07-062-2/+0
| | | | Closes #950.
* Merge branch 'log_precision' into 'main'Nick Mathewson2023-07-064-4/+377
|\ | | | | | | | | | | | | arti: Add a `logging.time_granularity` option with 1s default. Closes #551 See merge request tpo/core/arti!1376
| * arti: comments about catch_unwindNick Mathewson2023-07-061-0/+9
| |
| * time_granularity: Make sure formatter can't panicNick Mathewson2023-07-061-17/+49
| | | | | | | | | | | | I was unable to assure myself that tracing_subscriber could withstand a panicking Timer, so instead I'm trying to make sure our own LogTimer can't panic.
| * arti: Add a `logging.time_granularity` option with 1s default.Nick Mathewson2023-07-064-4/+336
| | | | | | | | | | | | | | This lets us provide less information in our logs: in particular, it lets us avoid logging with microsecond precision. Closes #551.
* | arti: Note possibility for future use of other tracing panic providerNick Mathewson2023-07-061-0/+5
| |
* | arti: On panic, avoid allocation even more.Nick Mathewson2023-07-061-7/+5
| | | | | | | | | | | | | | | | | | | | The original version of our panic handler would allocate a string for the panic `Location`. But if we're panicking we'd like to keep allocations to a minimum: so instead format the `Location` conditionally. This also drops a useless `std::borrow::Cow`. (The possibility of a "Don't have a `Cow`" commit message was considered and rejected.)
* | Add TODO comments about possibly migrating away from the backtrace crate.Nick Mathewson2023-07-051-1/+2
| |
* | arti: Install a panic hook that sends messages to `tracing`Nick Mathewson2023-07-051-0/+31
|/ | | | | | | (Also leaves installed the default handler that sends messages to stderr.) Closes #921.
* Merge branch 'keymgr-config' into 'main'gabi-2502023-06-291-0/+22
|\ | | | | | | | | arti-client: Add keystore_dir to StorageConfig. See merge request tpo/core/arti!1312
| * arti cfg tests: Add declare_exceptions for storage.keystore_dir.Gabriela Moldovan2023-06-291-1/+22
| | | | | | | | | | This moves `storage.keystore_dir` to a separate `declare_exceptions` block and explains why we have this exception.
| * example-config: Temporarily remove keystore_dir example.Gabriela Moldovan2023-06-292-17/+1
| | | | | | | | | | | | Let's remove this until we figure out how the config should behave when the `keymgr` feature is disabled (should it accept or reject `keystore_dir = true`?)
| * arti-client: Add keystore_dir to StorageConfig.Gabriela Moldovan2023-06-292-0/+17
| |
* | Turn off HS client connections by defaultIan Jackson2023-06-291-1/+10
|/ | | | As per IRC discussion, re lack of Vanguards.
* arti cfg tests: Suppress an undesriable clippy lintIan Jackson2023-06-281-0/+1
|
* arti cfg tests: declare_exceptions: Annotate the types for clarity (fmt)Ian Jackson2023-06-281-6/+4
|
* arti cfg tests: declare_exceptions: Annotate the types for clarityIan Jackson2023-06-281-1/+6
|
* arti cfg tests: Point the reader to the types used in declarationsIan Jackson2023-06-281-0/+12
|
* arti cfg tests: Move InCode into declare_config_exampleIan Jackson2023-06-281-19/+19
| | | | It's used for declarations only, and they should all be here.
* arti cfg tests: Make declare_exception take distinguished old/new typesIan Jackson2023-06-281-15/+27
| | | | | | As per discussion in https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1320#note_2916689 and IRC followup.
* HS configuration: Add retry parameters to configurationIan Jackson2023-06-282-0/+8
| | | | | | | I think these should go in `[circuit_timing]`. That section already has some retry parameters, so is not strictly *timing*. This is not honoured yet.
* HS configuration: Add and honour `allow_onion_addrs` in configurationIan Jackson2023-06-282-0/+14
| | | | | | | We put this in `[address_filter]`. The interaction with the corresponding stream preference is a bit complicated. We must turn the stream pref into a `BoolOrAuto`.