aboutsummaryrefslogtreecommitdiff
path: root/crates/arti/src/onion_proxy.rs
Commit message (Collapse)AuthorAgeFilesLines
* maint: Run maint/add_warning to deny string slicesClara Engler2026-06-091-0/+1
| | | | | | | | | | | | 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.
* Option to defer bootstrapping at startup.Nick Mathewson2026-06-081-0/+17
| | | | | | This option will primarily be used by integrators who want to modify the configuration, either directly or via RPC, before launching Arti completely.
* Make TorClient no longer implement Clone.Nick Mathewson2026-05-131-4/+4
|
* Make arti crate opaque by defaultNick Mathewson2026-01-131-18/+26
| | | | | | Only fn main() is now pub when experimental-api is disabled. Closes #2284.
* Merge branch 'disable-hidden-service' into 'main'wesleyac2025-11-121-5/+30
|\ | | | | | | | | | | | | arti/arti-client/tor-hsservice: Support disabling onion services in the config Closes #2133 See merge request tpo/core/arti!3253
| * arti(-client)/tor-hsservice: return None for disabled servicehashcatHitman2025-10-161-9/+10
| | | | | | | | | | | | | | | | | | | | There is no longer a hard error anywhere for trying to launch a service which is disabled in the config. Instead, it always means returning `Ok(None)`. The axum and hyper examples were updated again as a consequence. Signed-off-by: hashcatHitman <[email protected]>
| * arti/tor-hsservice: don't warn on autostarthashcatHitman2025-10-161-6/+6
| | | | | | | | | | | | | | The "enabled" config option is back to using a regular `bool`. When unset, it defaults to true, and the service runs as if it had been set. Signed-off-by: hashcatHitman <[email protected]>
| * arti/tor-hsservice: warn on service autostarthashcatHitman2025-10-161-1/+2
| | | | | | | | | | | | | | The "enabled" config option now uses `tor_config::BoolOrAuto`. When unset (which defaults to "Auto"), the service will run with a warning. Signed-off-by: hashcatHitman <[email protected]>
| * arti(-client): graceful service disable in arti onlyhashcatHitman2025-10-161-5/+4
| | | | | | | | | | | | | | | | | | | | | | When a service is disabled in the config, `arti::onion_proxy::Proxy` handles it gracefully, and `arti_client::client::TorClient::launch_onion_service_with_hsid` and `arti_client::client::TorClient::launch_onion_service` both hard error. The axum and hyper examples were updated again as a consequence. Signed-off-by: hashcatHitman <[email protected]>
| * arti/arti-client: add graceful service disablehashcatHitman2025-10-161-5/+29
| | | | | | | | | | | | | | | | | | Hidden services disabled in the config are now handled more gracefully by arti/arti-client, before the hard error occurs. The axum and hyper examples were updated as a consequence. Signed-off-by: hashcatHitman <[email protected]>
* | Fix name of clippy lint to unchecked_time_subtraction (2)Ian Jackson2025-11-061-1/+1
| | | | | | | | Run maint/add_warning
* | all: replace all uses of `futures::task::SpawnExt` with `tor_rtcompat::SpawnExt`Steven Engler2025-11-041-2/+2
|/
* 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
|
* arti: Allow running hidden services with SOCKS/DNS ports disabled.Gabriela Moldovan2024-09-171-0/+5
| | | | Closes #1569
* tor-hsservice: Log the onion svc status.Gabriela Moldovan2024-09-091-1/+15
| | | | We now log the onion service status on change.
* tor-hsservice: Add restricted discovery configuration.Gabriela Moldovan2024-08-051-1/+1
|
* arti: Make OnionServiceProxyConfig pub(crate).Gabriela Moldovan2024-01-181-2/+2
| | | | | We are about to need the `svc_cfg` (for calling `TorClient::create_onion_service`).
* tor-hsservice: Create a separate RunningOnionService type.Gabriela Moldovan2024-01-181-2/+2
| | | | | | | | This will enable us to construct non-launched (but configured) `OnionService`s. We need this, for example, for implementing the `arti hss` CLI command. Part of #1227
* Merge branch 'return-of-the-son-of-arti-todos' into 'main'Nick Mathewson2023-12-141-28/+58
|\ | | | | | | | | Resolve Arti crate todos, redux See merge request tpo/core/arti!1833
| * Trivial case fix in a comment.Ian Jackson2023-12-141-1/+1
| |
| * arti: Add a todo to describe how and why to test build_list.Nick Mathewson2023-12-131-0/+7
| |
| * arti: Use BTreeMap for maps of onion service configs.Nick Mathewson2023-12-131-9/+9
| |
| * arti: Simplify build_list slightlyNick Mathewson2023-12-131-4/+3
| |
| * arti: resolve a TODO in onion_proxy launch_new.Nick Mathewson2023-12-121-7/+2
| |
| * arti: rethink a TODO HSS about nicknamesNick Mathewson2023-12-121-1/+9
| | | | | | | | | | | | The TODO HSS in question is about our inability to serialize every possible builder. The right answer here might be to use something else instead of a ListBuilder.
| * arti: Enforce onion service nickname distinctnessNick Mathewson2023-12-121-15/+36
| | | | | | | | | | | | | | | | | | | | | | The most logical way to do this was to change the "List" type to a HashMap, and add a build function to the ListBuilder. This change additionally renames: OnionServiceProxyConfig{List=>Map} NamedProxyMap => ProxyBuilderMap (We now have two kinds of map, and this name change will clarify the distinction.)
| * arti: Generalize a TODO HSS about reconfiguration.Nick Mathewson2023-12-121-1/+2
| | | | | | | | | | | | It's correct that we'd like someday for the `arti` crate APIs to allow all the different modes supported by `Reconfigure` enum; this is #1156, and it does not block an HSS release.
| * Remove TODOs obsoleted by onion service reconfiguration.Nick Mathewson2023-12-121-1/+0
| | | | | | | | (This was solved with !1798)
* | arti: Use warn_report on anyhow::Error in onion_proxyNick Mathewson2023-12-121-4/+1
|/ | | | This was made possible by !1818.
* Merge branch 'todo_hsrproxy' into 'main'Nick Mathewson2023-12-111-1/+4
|\ | | | | | | | | Resolve several TODO HSS items in hsrproxy See merge request tpo/core/arti!1809
| * hsrproxy: Take nickname as an argument and pass it to forwarding functionNick Mathewson2023-12-071-1/+4
| | | | | | | | We'll use this for logging.
* | Add a TODO HSS comment about Reconfigure.Ian Jackson2023-12-111-0/+1
| |
* | Reconfigure onion services when their configuration changes.Nick Mathewson2023-12-051-9/+16
| | | | | | | | Closes #1089.
* | arti: Backend support for reconfiguring onion proxies.Nick Mathewson2023-12-051-6/+101
|/
* HSS: Add many must_use annotationsIan Jackson2023-10-191-0/+2
|
* arti: Lower some over-broad #allows in onion_proxy.rsNick Mathewson2023-10-051-4/+2
|
* 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: 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: Add a list of [[onion_service]]s to the config.Nick Mathewson2023-10-031-1/+15
| | | | There are no tests for parsing it yet.
* arti: add a set of OnionServiceProxyConfig types.Nick Mathewson2023-10-031-0/+56
These don't yet attach to the rest of the ArtiConfig, or actually launch any onion services, but they're a start.