summaryrefslogtreecommitdiff
path: root/crates/arti/src
Commit message (Collapse)AuthorAgeFilesLines
* Temporarily suppress mismatched_lifetime_syntaxes.Gabriela Moldovan2025-07-072-0/+2
| | | | See #2060.
* arti: keys: Fix arti keys help messagehjrgrn2025-06-231-2/+2
|
* arti console logging: use stderr instead of stdoutJim Newsome2025-06-172-4/+4
| | | | Fixes #2024
* arti: Add keys list and keys list-keystoreshjrgrn2025-06-123-1/+203
|
* expose socks proxy some moretrinity-1686a2025-05-301-3/+21
|
* *: suppress cognitive_complexity warnings from nightlyNick Mathewson2025-05-294-0/+7
| | | | | | | | | | | | | Apparently clippy nightly is better (or worse?) about detecting complex functions than before, so I'm suppressing these warnings where they occur. I have mixed feelings about these warnings: On the plus side, they really do help to detect functions that are twistier than they need to be. On the minus side, they get confused by tracing macros, and the "allows" do pile up. But on the plus side, those "allows" do provide a way to find functions that need to be refactored, and they are never uglier than the functions they decorate.
* arti, cell, dirclient: Use expect instead of unwrap.Nick Mathewson2025-05-291-1/+1
| | | | | | Clippy nightly detects this problem, though earlier clippy verisons haven't. The common element here is applying unwrap() to the result from a write!().
* Merge branch 'todo1' into 'main'Ian Jackson2025-05-201-78/+57
|\ | | | | | | | | arti: Fix TODO + Minor Refactor See merge request tpo/core/arti!2935
| * arti: cfg::test Rework refactorplaybahn2025-05-191-9/+8
| |
| * arti: cfg::test: Fix TODO + Minor refactorplaybahn2025-04-261-76/+56
| |
* | arti: resolve a variant-size-difference warning.Nick Mathewson2025-05-152-2/+2
| |
* | Replace signal-hook-async-std with async-signal to fix RUSTSEC-2024-0384Vijaya Bhaskar2025-04-261-4/+3
|/
* arti,arti-client: Add an option to override required protocolsNick Mathewson2025-04-162-0/+15
| | | | | (This isn't a boolean, because we really don't want people ignoring all possible required protocols.)
* Remove hsc quiet and force flags in favor of batchhjrgrn2025-04-141-33/+31
|
* metrics: config tests: Correct a commentIan Jackson2025-04-081-1/+1
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2918#note_3185867
* metrics: config: Correct the docs on the MetricsConfig typeIan Jackson2025-04-081-1/+1
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2918#note_3185866
* metrics: config: Correct the docs on the listen config fieldIan Jackson2025-04-081-9/+4
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2918#note_3185864
* metrics: config: Fix typo in the example config fileIan Jackson2025-04-081-1/+1
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2918#note_3185863
* metrics: config: Correct the docs in the example config fileIan Jackson2025-04-081-1/+2
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2918#note_3185862
* arti: cfg tests: Improve formatting of an assertIan Jackson2025-04-081-3/+6
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2918#note_3185859
* arti: Optionally set up a Prometheus metrics exporterIan Jackson2025-04-083-0/+150
| | | | | | | | | | | | | New cargo feature `metrics`, currently experimental. New config option `metrics.prometheus.listen`. Uses standard `Listen` syntax, but not every configuration is supported due to upstream limitations. If the config option is set, use metrics-exporter-prometheus to offer an HTTP scrape endpoint. Or, if compiled out, fail. Currently there are no actual metrics exported at all.
* arti: cfg tests: On mismatch, report which config fileIan Jackson2025-04-081-2/+2
| | | | | Otherwise it can be very confusing pushing the bump in the carpet back and forth.
* arti: Fix TODO: Rework test: onion_proxy::build_listplaybahn2025-04-011-71/+31
|
* arti: onion_proxy::build_list: fix TODO: Add testplaybahn2025-04-011-6/+104
|
* Add examples and tests for RPC options.Nick Mathewson2025-03-253-3/+121
| | | | Closes #1830.
* arti: warn when rpc options are set without rpc feature.Nick Mathewson2025-03-251-0/+21
| | | | Closes #1309.
* Merge branch '1630-scrub-address-from-output' into 'main'gabi-2502025-03-191-23/+28
|\ | | | | | | | | | | | | hsc: remove onion-address flag in favour of stdin Closes #1630 See merge request tpo/core/arti!2861
| * hsc: Improve get_onion_address functionhjrgrn2025-03-181-2/+3
| |
| * hsc: Add --quite CLI flaghjrgrn2025-03-171-10/+15
| | | | | | | | | | * Add `quite` to the common arguments * Substitute dialoguer in favor of `read_line` in `get_onion_address`
| * hsc: Improve get_onion_address functionhjrgrn2025-03-171-4/+3
| |
| * hsc: remove onion-address flag in favour of stdinhjrgrn2025-03-141-22/+22
| | | | | | | | | | * The user will be prompted interactively for the onion-address to prevent onion-address leaking in shell history
* | Merge branch 'hsc-lf' into 'main'gabi-2502025-03-181-1/+1
|\ \ | |/ |/| | | | | arti: hsc-key-get: Print LF after discovery key See merge request tpo/core/arti!2856
| * arti: hsc-key-get: Print LF after discovery keyplaybahn2025-03-131-1/+1
| | | | | | | | | | Did not print a newline after service discovery key. Looked bad. Prints newline now. Looks better.
* | hsc: remove TODO about display_service_discovery_key error handling.hjrgrn2025-03-141-1/+0
|/
* Deprecate --onion-name; introduce --onion-addressdisha2025-03-122-30/+42
|
* arti: Remove incorrect deprecation warning in hschjrgrn2025-03-101-1/+0
|
* tor-rtcompat: Remove ToplevelBlockon from RuntimeIan Jackson2025-03-042-5/+5
| | | | | | | | Introduce ToplevelRuntime as an alias, and use it in the top-level programs. Now none of the principal protocol implementation code has access to the executor's toplevel entrypoint, and can't call it by mistake.
* arti: Disable color when stdout is not a tty.Nick Mathewson2025-02-241-1/+7
| | | | | Closes #1763. Closes #1862.
* socks.rs: Update documentation; RpcDataStream has been renamed.Nick Mathewson2025-01-301-9/+5
|
* rpc: Correct API documentation about optimismNick Mathewson2025-01-301-2/+1
| | | | | | | | | | | Our documentation had dated to an older version of our RPC stream code, where all streams were automatically optimistic. But as explained, our use of "optimistic"ness in RPC stream code is now purely internal, to make it possible to get an DataStreamCtrl. This isn't user-visible in our rpc_conn_open_stream code. Closes #1583
* Merge branch 'rpc-missing-dir' into 'main'Nick Mathewson2025-01-231-8/+16
|\ | | | | | | | | rpc: Tolerate NotFound on configured connect point directory. See merge request tpo/core/arti!2735
| * connpts: Document behavior on nonexistent directoryNick Mathewson2025-01-231-0/+2
| |
| * rpc: Tolerate NotFound on configured connect point directory.Nick Mathewson2025-01-231-8/+14
| | | | | | | | | | | | | | | | If Arti tries to bind to a directory of connect points, and that directory isn't there, the right behavior is to treat the directory as if it were empty. Otherwise, the user would have to create the default connect point directory (as empty) before Arti would start.
* | arti: Make Rpc argument unconditional when constructing socks proxyNick Mathewson2025-01-236-33/+43
| | | | | | | | | | | | Formerly this was a conditional method argument, which is a huge antipattern. Now it is unconditionally present, as `Option<T>` for a type that is uninhabited when RPC isn't supported.
* | arti::socks: Re-wrap a section.Nick Mathewson2025-01-231-2/+3
| | | | | | | | | | rust-analyzer keeps re-wrapping this piece for me, even though rustfmt doesn't complain.
* | arti: remove an obsolete rpc todo.Nick Mathewson2025-01-231-1/+0
| | | | | | | | Information _is_ passed to the RpcMgr, via the argument to new_connection.
* | arti: remove an obsolete rpc todo.Nick Mathewson2025-01-231-1/+0
| | | | | | | | | | The RpcMgr does indirectly hold a reference to the client, via its make_session argument.
* | arti: remove an obsolete rpc todo.Nick Mathewson2025-01-231-1/+0
| | | | | | | | We _do_ have error detection from this function, and have for ages.
* | arti: Remove old workaround for runtime selection under RPC.Nick Mathewson2025-01-231-6/+1
|/ | | | | This was necessary before we had support for implementing RPC methods on generic types.
* rpc: Rename new_stream_handle to new_oneshot_client.Nick Mathewson2025-01-151-1/+1
| | | | | | | | This method doesn't actually create a new stream; it creates a single-use client object that can be used with SOCKS to launch a new stream, and capture an RPC object for that stream. Closes #1664.