summaryrefslogtreecommitdiff
path: root/crates/tor-hsservice
Commit message (Collapse)AuthorAgeFilesLines
* maint: bump minor versions of all published cratesSteven Engler2025-10-291-37/+37
| | | | | | | ```bash readarray -t publish < <(cargo metadata --format-version 1 | jq -r '.packages[] | select((.id | startswith("path+file:///")) and (.rust_version != null) and (.publish == null or .publish == true or .publish != [])) | .name') for package in "${publish[@]}"; do echo "$package:"; cargo set-version --bump minor -p "$package"; done ```
* Merge branch 'restricted-discovery-stable' into 'main'gabi-2502025-10-221-3/+4
|\ | | | | | | | | arti: Mark restricted-discovery as non-experimental See merge request tpo/core/arti!3384
| * arti: Mark restricted-discovery as non-experimentalGabriela Moldovan2025-10-211-3/+4
| | | | | | | | As per the team decision from the 14 Oct Arti sync.
* | Bump MSRV from 1.85.1 to 1.86Clara Engler2025-10-211-1/+1
|/
* Fix new clippy nightly warning about subtracting Durations.Nick Mathewson2025-10-161-7/+11
|
* Merge branch 'file-too-large' into 'main'wesleyac2025-10-061-3/+2
|\ | | | | | | | | tor-hsservice: Replace `libc::EFBIG` with `io::ErrorKind::FileTooLarge` See merge request tpo/core/arti!3218
| * tor-hsservice: Replace `libc::EFBIG` with `io::ErrorKind::FileTooLarge`hashcatHitman2025-09-011-2/+1
| | | | | | | | | | | | | | | | Resolved an MSRV TODO. We used `libc::EFBIG` previously because `io::ErrorKind::FileTooLarge` was still unstable. It has since stabilized and entered our MSRV (>= 1.83.0). Signed-off-by: hashcatHitman <[email protected]>
| * tor-hsservice: Small typo correctionhashcatHitman2025-09-011-1/+1
| | | | | | | | | | | | | | Unless this is a pun, I'm pretty sure this is supposed to be `EFBIG` and not `EFBUG`. Signed-off-by: hashcatHitman <[email protected]>
* | release: Bump versions.Wesley Aptekar-Cassels2025-10-021-37/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because we've updated our MSRV, we must bump the minor version for every package. This was done as follows: cargo set-version -p arti 1.6.0 cargo set-version -p oneshot-fused-workaround 0.4.0 cargo set-version -p slotmap-careful 0.4.0 cargo set-version -p test-temp-dir 0.5.0 cargo set-version -p fslock-guard 0.4.0 cargo set-version -p hashx 0.5.0 cargo set-version -p equix 0.4.0 cargo set-version -p caret 0.7.0 cargo set-version -p fs-mistrust 0.12.0 cargo set-version -p safelog 0.6.0 cargo set-version -p retry-error 0.8.0 xargs -I P <<END cargo set-version -p P 0.35.0 tor-basic-utils tor-error tor-general-addr tor-geoip tor-rtcompat tor-rtmock tor-async-utils tor-config tor-config-path tor-rpc-connect tor-log-ratelim tor-rpcbase tor-memquota tor-units tor-llcrypto tor-bytes tor-protover tor-checkable tor-cert tor-key-forge tor-hscrypto tor-socksproto tor-linkspec tor-cell tor-proto tor-netdoc tor-consdiff tor-netdir tor-relay-selection tor-persist tor-keymgr tor-chanmgr tor-ptmgr tor-dircommon tor-guardmgr tor-circmgr tor-dirclient tor-dirmgr tor-dirserver tor-hsclient tor-hsservice tor-hsrproxy tor-relay-crypto arti-client arti-relay arti-rpcserver arti-ureq arti-rpc-client-core END
* | tor-hsservice: Fix time_store test.Wesley Aptekar-Cassels2025-10-011-1/+0
| | | | | | | | | | | | | | | | This behaviour was changed in humantime 2.3.0. Because they made this breaking change on a minor semver bump, if we want to depend on this behaviour, we would need to lock to a specific version. I don't think this is critical, but I am still looking into where exactly this is used.
* | Remove "doc_auto_cfg" incantation from all crates.Nick Mathewson2025-09-291-1/+1
| | | | | | | | This feature has been removed from nightly, in favor of doc_cfg.
* | hsservice: Remove misleading OnionService note.Gabriela Moldovan2025-09-121-1/+1
| | | | | | | | | | | | | | | | An `OnionService` represents a not-yet-running service. To launch it, you have to call `OnionService::launch()`, which consumes the `OnionService` and returns `RunningOnionService`, so the part of the docs saying that an `OnionService` "may or may not be running" was somewhat misleading.
* | hsservice: Say how a RunningOnionService is constructed.Gabriela Moldovan2025-09-121-1/+3
| | | | | | | | | | | | | | This adds some extra docs to `RunningOnionService`. This also removes the TODO about #1228, because that ticket was closed in !1945.
* | hsservice: Remove an already-addressed TODO.Gabriela Moldovan2025-09-121-1/+0
| | | | | | | | In #1247 we decided to stick with the current names.
* | Bump MSRV from 1.85 to 1.85.1Nick Mathewson2025-09-091-1/+1
| | | | | | | | Closes #2107
* | arti: keys: Add `keys check-integrity` CLI toolhjrgrn2025-09-043-43/+84
| |
* | Merge branch 'the-bell-tolls-for-once_cell' into 'main'wesleyac2025-09-031-7/+1
|\ \ | | | | | | | | | | | | various crates: Updated MSRV TODOs for `once_cell` removal See merge request tpo/core/arti!2953
| * | tor-hsservice: Modified MSRV TODO for `once_cell` removalhashcatHitman2025-08-201-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | - Shortened the TODO added in cad6f9054a5ff4d16e953fd4617d3893639deeef in the style of [this maintainer request] for consistency. [this maintainer request]: https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2953#note_3197719 Signed-off-by: hashcatHitman <[email protected]>
* | | Update to derive-deftly 1.3.0Ian Jackson2025-09-021-1/+1
| |/ |/|
* | Bump the minor version of every published crate except for `arti`.Nick Mathewson2025-08-281-37/+37
| | | | | | | | | | | | | | | | Per policy, we bump the minor version of every tor-*, arti-* crate on each release. We have updated our MSRV, so we're treating this as a breaking change for our non-(arti/tor)-prefixed crates too.
* | Merge branch 'fixup-features' into 'main'Nick Mathewson2025-08-281-0/+1
|\ \ | | | | | | | | | | | | Run "fixup-features" in preparation for release. See merge request tpo/core/arti!3196
| * | Fix complaints from "cargo sort"Nick Mathewson2025-08-271-1/+2
| | |
| * | Run "fixup-features"Nick Mathewson2025-08-271-1/+1
| | |
* | | proto: Add a circuit module shared between client and relay impls.Gabriela Moldovan2025-08-281-2/+2
|/ / | | | | | | | | | | | | This is just code motion (I suggest reviewing with `--color-moved`). This also moves the implementation-agnostic parts from `tor_proto::client::circuit` to a new `tor_proto::circuit` module.
* / hsservice: Move derive_more::From out of internal_prelude.Nick Mathewson2025-08-194-1/+4
|/ | | | | | | | | | | | | | This fixes an error from nightly. The trouble is that with nightly, there's a now a [derive macro for From][issue]. That doesn't cause a conflict when we `use derive_more::From`, but it _does_ cause a conflict when we import `derive_more::From` via `use internal_prelude::*`. So as a solution, we just import `derive_more::From` explicitly. Closes #2124 [issue]: https://github.com/rust-lang/rust/pull/144922
* misc: cleanup now that `_report!` macros support fieldsSteven Engler2025-08-181-1/+1
|
* Merge branch 'relay-reactor-placeholder' into 'main'David Goulet2025-08-184-9/+9
|\ | | | | | | | | proto: Add a placeholder for the relay reactor. See merge request tpo/core/arti!3162
| * proto: Move the `stream` module under `client` (breaking).Gabriela Moldovan2025-08-184-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | The `stream` module is client-specific, for the most part, so I am moving it under `client`. Later on, we will factor out the parts that can be shared with the relay implementation. Note: this is a breaking change as the deleted `stream` module was `pub`. We could've kept the module and reexported from it the public types from `tor_proto::client::stream`, but I think it's better to have this `client` namespacing, because it makes the separation between the client and relay parts clearer.
* | Merge branch 'fix-nightly-warn' into 'main'Nick Mathewson2025-08-181-2/+0
|\ \ | | | | | | | | | | | | Fix clippy errors on nightly See merge request tpo/core/arti!3148
| * | clippy: fix `clippy::duplicated_attributes` warningsSteven Engler2025-08-111-2/+0
| |/ | | | | | | | | | | | | | | | | | | ```text warning: duplicated attribute --> crates/tor-hsservice/src/timeout_track.rs:630:14 | 630 | #![allow(clippy::needless_pass_by_value)] // TODO hoist into standard lint block | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ```
* | docs: Add notes about hs-pow-full using LGPL deps.Wesley Aptekar-Cassels2025-08-141-0/+2
| |
* | tor-hsservice: Move check for enable_pow without hs-pow-full feature.Wesley Aptekar-Cassels2025-08-142-11/+9
| | | | | | | | This also make this check a error rather than a warning.
* | tor-hsservice: Add note about check_solve implementation.Wesley Aptekar-Cassels2025-08-131-0/+3
| |
* | tor-hsservice: Fix error message.Wesley Aptekar-Cassels2025-08-131-1/+1
| |
* | tor-hsservice: Change capping of PoW effort.Wesley Aptekar-Cassels2025-08-131-26/+23
| | | | | | | | | | | | | | | | This caps the PoW effort during sorting, rather than at intake. This allows us to record efforts that are capped in our metrics histogram while only recording metrics after the PoW solve has actually been verified.
* | tor-hsservice: Make some PoW warnings more understandable.Wesley Aptekar-Cassels2025-08-131-3/+10
| |
* | tor-hsservice: Improve error conversion code.Wesley Aptekar-Cassels2025-08-131-16/+8
| |
* | tor-hsservice: Use warn_report for PoW errors.Wesley Aptekar-Cassels2025-08-131-9/+15
| |
* | tor-hsservice: Don't set DegradedReachable status in PowManager.Wesley Aptekar-Cassels2025-08-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | Three is a concern that a DegradedReachable status could overwrite a previous Broken status. A nicer solution could be to add a function to StatusSender that only will change the status to a "more or equally severe" status. However, I am a little dubious about using the DegradedReachable status for PoW in general, since it has a better documented meaning for IPTs than it does for PoW.
* | tor-hsservice: Remove outdated comment.Wesley Aptekar-Cassels2025-08-131-5/+0
| | | | | | | | We do in fact need multiple locations to hold the sender.
* | tor-hsservice: Rename InternalPowError to PowError.Wesley Aptekar-Cassels2025-08-132-13/+13
| |
* | tor-hsservice: Make InternalPowError non_exhaustive.Wesley Aptekar-Cassels2025-08-131-0/+1
| | | | | | | | Now that this is public, this is prudent.
* | tor-hsservice: Make OpenReplayLog error transparent.Wesley Aptekar-Cassels2025-08-131-1/+1
| |
* | tor-hsservice: Fix clippy.Wesley Aptekar-Cassels2025-08-131-3/+2
| |
* | tor-hsservice: Add disable_pow_compilation option.Wesley Aptekar-Cassels2025-08-133-15/+41
| | | | | | | | | | | | I'm not 100% on this being here, it seems like it might want to be a option for all onion services, rather than per-service. However, this is good enough for now.
* | tor-hsservice: Warn when enable_pow is set on a non hs-pow-full build.Wesley Aptekar-Cassels2025-08-132-1/+11
| |
* | tor-hsservice: Remove unimplemented config option.Wesley Aptekar-Cassels2025-08-131-10/+0
| | | | | | | | | | This config option doesn't really apply to Prop 362 (which is what's implemented in Arti), as far as I can tell.
* | tor-hsservice: Remove outdated TODO.Wesley Aptekar-Cassels2025-08-131-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I have thought about this and come to the conclusion (which is what I suspected when I wrote it) that the current behaviour is correct. The attack described is completely impractical (the space of nonces is very large), and checking whether a nonce is a replay is cheaper than verifying a PoW solve, so we want to do that first. Splitting this into something like the following: * Check replay log without updating * Check that solve is valid * Update replay log Would require adding a somewhat dangerous API to the ReplayLog, and requires doing more work per request for something that isn't even a practical attack, AFAICT.
* | tor-hsservice: Add note about not persisting per-PoW-period state.Wesley Aptekar-Cassels2025-08-131-1/+7
| |
* | tor-hsservice: Add metrics support to PoW code.Wesley Aptekar-Cassels2025-08-132-3/+59
| |