summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | Merge branch 'v6only' into 'main'opara2025-11-126-4/+151
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-rtcompat: Use a consistent listen implementation, and set `IPV6_V6ONLY` for listening sockets on `cfg(unix)` Closes #2246 See merge request tpo/core/arti!3457
| * | | | | | tor-rtcompat: add comments about blocking in async contextsSteven Engler2025-11-122-1/+5
| | | | | | |
| * | | | | | tor-rtcompat: set `IPV6_V6ONLY` for listening sockets on unixSteven Engler2025-11-102-2/+22
| | | | | | |
| * | | | | | tor-rtcompat: use a consistent `listen()` implementationSteven Engler2025-11-106-3/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This gives us a consistent `listen()` implementation across runtimes, and gives us flexibility to customize the bind/listen process for TCP sockets.
* | | | | | | Merge branch 'disable-hidden-service' into 'main'wesleyac2025-11-1210-43/+117
|\ \ \ \ \ \ \ | |_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | arti/arti-client/tor-hsservice: Support disabling onion services in the config Closes #2133 See merge request tpo/core/arti!3253
| * | | | | | Fix semver files.Wesley Aptekar-Cassels2025-11-033-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't need to modify semver files for newly added methods.
| * | | | | | arti(-client|-ureq)/tor-hsservice: semver files v2hashcatHitman2025-10-213-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Combined with the previous commit, this completes my second attempt at correctly handling the semver files. tor-hssservice: I removed the extra bit at the end of the first line explaining the semantics of the new return type, since the important part is really just the fact that the return type changed. The semantics are documented in the methods themselves. arti-client: Same as above, but I also removed the `client` module prefix since the `client` module isn't actually public, so to external crate users the broken type is directly in the crate root. Removed old "used in the public API of this crate" line. Added lines referring to the 2 breaking changes we re-export from tor-hsservice. arti-ureq: Removed old "used in the public API of this crate" line. Added lines referencing every breaking change in arti-client. This MIGHT be wrong, but I think this is correct because we re-export arti-client as a whole. Signed-off-by: hashcatHitman <[email protected]>
| * | | | | | arti(-rpcserver): remove incorrect semver fileshashcatHitman2025-10-212-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Second attempt at semver in progress. Based on the feedback from wesley, it seems neither of these crates had any breaking changes. Signed-off-by: hashcatHitman <[email protected]>
| * | | | | | arti(-client|-ureq|-rpcserver): semver fileshashcatHitman2025-10-164-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If I understand correctly, the breaking changes propagate like this. Signed-off-by: hashcatHitman <[email protected]>
| * | | | | | arti-client/tor-hsservice: semver fileshashcatHitman2025-10-162-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Might be too verbose... unsure. Signed-off-by: hashcatHitman <[email protected]>
| * | | | | | arti(-client)/tor-hsservice: return None for disabled servicehashcatHitman2025-10-166-54/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-164-22/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]>
| * | | | | | tor-hsservice: TODO - allow changing "enabled"hashcatHitman2025-10-161-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As requested in the review, there's a TODO now so we can come back some day and allow onion services to be started/stopped while the client is running. Signed-off-by: hashcatHitman <[email protected]>
| * | | | | | arti: fix hs "enabled" in example confighashcatHitman2025-10-161-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I didn't realize we had tests that made use of the example config. The pre-commit and pre-push hooks I had didn't trigger them, so my modification to the example config silently got through and caused `cfg::test::onion_services` to fail in CI. The issue was that I had put my example for `onion_services."allium-cepa".enabled` with a default of `true`. The correct default is actually `"auto"`, so I switched it and improved the description of the options. I've fixed my hooks. Which, to be fair, are just the hooks provided in `./maint/hooks/`. Maybe those should be improved? Signed-off-by: hashcatHitman <[email protected]>
| * | | | | | arti/tor-hsservice: warn on service autostarthashcatHitman2025-10-164-6/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-164-65/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-164-38/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]>
| * | | | | | arti: add "enabled" config to the example confighashcatHitman2025-10-161-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: hashcatHitman <[email protected]>
| * | | | | | tor-hsservice: add config to disable servicehashcatHitman2025-10-163-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added the `enabled` field to the config options for hidden services. The default is `true`. If it is set to `false`, the service won't start. As of this specific commit, it's a hard error; it'll be checked again at an earlier stage where it won't be once the feature is ready. Signed-off-by: hashcatHitman <[email protected]>
* | | | | | | Merge branch 'relay-bin-4' into 'main'opara2025-11-1113-21/+149
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | arti-relay: Add OR port listener task See merge request tpo/core/arti!3396
| * | | | | | arti-relay: update some comments from past few commitsSteven Engler2025-11-112-2/+9
| | | | | | |
| * | | | | | tor-chanmgr: wrap the peer address in `Sensitive`Steven Engler2025-11-058-16/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For incoming connections, wrap the peer address in `Sensitive` as it could be a client.
| * | | | | | arti-relay: add OR port listener taskSteven Engler2025-11-055-3/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This does not yet get the OR port from the config, and the channel manager doesn't yet do anything with the incoming connection.
| * | | | | | arti-relay: add error context to house keeping taskSteven Engler2025-11-051-5/+11
| | | | | | |
| * | | | | | arti-relay: use anyhow's error formattingSteven Engler2025-11-051-2/+10
| | | | | | |
* | | | | | | Merge branch 'fallbackdir-nov11th-2025' into 'main'gabi-2502025-11-111-885/+887
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fallbackdir: Update list generated on November 10, 2025 See merge request tpo/core/arti!3459
| * | | | | | | fallbackdir: Update list generated on November 10, 2025Tor CI Release2025-11-111-885/+887
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Tor CI Release <[email protected]>
* | | | | | | Merge branch 'p2-dedup' into 'main'Ian Jackson2025-11-111-123/+139
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-netdoc: parse2 More deduplication of the derive macro See merge request tpo/core/arti!3455
| * | | | | | | tor-netdoc: parse2: Improve error message when using with=Ian Jackson2025-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This can result in "trait not implemented" errors here. Use the `${paste_spanned}` trick.
| * | | | | | | tor-netdoc: parse2 derive: deduplicate completionIan Jackson2025-11-101-35/+33
| | | | | | | |
| * | | | | | | tor-netdoc: parse2 derive: deduplicate item accumulationIan Jackson2025-11-101-31/+35
| | | | | | | |
| * | | | | | | tor-netdoc: parse2 derive: deduplicate item accumulation (prep)Ian Jackson2025-11-101-43/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move what is now IF_NONSTRUCTURAL_ACCUMULATE into the common module. It's not yet suitable for reuse. The docs for ACCUMULATE_ITEM_VALUE are still wrong. We'll fix that in a moment.
| * | | | | | | tor-netdoc: parse2 derive: Provide dtrace in NetdocParseableFieldsIan Jackson2025-11-101-12/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was previously only not done because of the need to c&p. Also, we're going to be expanding some common macros that will use it.
| * | | | | | | tor-netdoc: parse2 derive: Get rid of $ITEM workaroundIan Jackson2025-11-101-10/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The hygiene is fixed in derive-deftly 1.5.x.
* | | | | | | | Merge branch 'netdoc-encode' into 'main'gabi-2502025-11-118-13/+18
|\ \ \ \ \ \ \ \ | |_|_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | tor-netdoc: Rename the `build` module to `encode` See merge request tpo/core/arti!3456
| * | | | | | | Apply deferred rustfmt churnIan Jackson2025-11-103-4/+4
| | | | | | | |
| * | | | | | | tor-netdoc: Introduce "encode" feature for the like-named moduleIan Jackson2025-11-104-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're going to introduce facilities for encoding more generally, and we'll want a way to enable them. Instead, have a separate feature for *encoding* documents.
| * | | | | | | tor-netdoc: Rename the `build` module to `encode`Ian Jackson2025-11-105-8/+8
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | The word "build" so often in Rust means builder pattern. This module contains functions for encoding.
* | | | | | | Merge branch 'bug2118a' into 'main'wesleyac2025-11-101-14/+29
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | `arti-client`: Move `create_onion_service()` to `InertTorClient` See merge request tpo/core/arti!3435
| * | | | | | Make create_onion_service() correctionsNeel Chauhan2025-11-101-17/+2
| | | | | | |
| * | | | | | Mention InertTorClient in client.rsNeel Chauhan2025-11-101-1/+1
| | | | | | |
| * | | | | | Don't assume we have inert_client in TorClientNeel Chauhan2025-11-041-2/+2
| | | | | | |
| * | | | | | `arti-client`: Move `create_onion_service()` to `InertTorClient`Neel Chauhan2025-11-041-15/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Part of #2118.
* | | | | | | Merge branch 'p2-dedup-1' into 'main'Ian Jackson2025-11-102-136/+146
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-netdoc: parse2 derive: Some deduplication See merge request tpo/core/arti!3450
| * | | | | | | tor-netdoc: Fix typoIan Jackson2025-11-101-1/+1
| | | | | | | |
| * | | | | | | tor-netdoc: parse2 derive: deduplicate item parsingIan Jackson2025-11-061-24/+23
| | | | | | | |
| * | | | | | | tor-netdoc: parse2 derive: deduplicate item set selectorsIan Jackson2025-11-061-47/+62
| | | | | | | |
| * | | | | | | tor-netdoc: parse2 derive: deduplicate F_EFFECTIVE_TYPEIan Jackson2025-11-061-24/+13
| | | | | | | |
| * | | | | | | tor-netdoc: parse2 derive: deduplication: field types and keywordsIan Jackson2025-11-061-36/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Have the module expect the use site to determine (mostly) the field kind. Document this expectation. Now NetdocParseableCommon can have the keyword-related definitions.
| * | | | | | | tor-netdoc: parse2 derive: deduplication: start a moduleIan Jackson2025-11-062-9/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Put one textually-identical define in it, to start with.