summaryrefslogtreecommitdiff
path: root/crates/tor-hsservice
Commit message (Collapse)AuthorAgeFilesLines
* tor-dirclient: Bump minor version.Gabriela Moldovan2024-03-041-1/+1
| | | | | `tor-dirclient` uses `tor-proto` in its public API, and its `tor-proto` version was bumped from 0.12.1 -> 0.16.1.
* tor-cert: Bump minor version.Gabriela Moldovan2024-03-041-1/+1
| | | | | | | | | | We bumped the minor version of `tor_checkable`, which is used in the `tor-cell` public APIs (e.g. `Ed25519Cert` implements `tor_checkable::Timebound`, using `tor_checkable::TimeValidityError` as its error type). This bumps the minor version of `tor-cert` (including for its dependents).
* Bump the minor version, for crates with breaking changes.Gabriela Moldovan2024-03-041-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | APIs were broken in these pre-1.0.0 crates: ``` tor-keymgr tor-config tor-checkable tor-circmgr tor-dirmgr tor-hsclient tor-hsservice tor-hsrproxy ``` Done with: ``` cargo set-version --bump minor -p tor-keymgr cargo set-version --bump minor -p tor-config cargo set-version --bump minor -p tor-checkable cargo set-version --bump minor -p tor-circmgr cargo set-version --bump minor -p tor-dirmgr cargo set-version --bump minor -p tor-hsclient cargo set-version --bump minor -p tor-hsservice cargo set-version --bump minor -p tor-hsrproxy ```
* Bump patchlevel of pre-1.0.0 crates with new APIs.Gabriela Moldovan2024-03-041-5/+5
| | | | | | | | | | | | | | | | | | | | APIs were added: ``` tor-units tor-cell tor-proto tor-netdir arti-client ``` Done with: ``` cargo set-version --bump patch -p tor-units cargo set-version --bump patch -p tor-cell cargo set-version --bump patch -p tor-proto cargo set-version --bump patch -p tor-netdir cargo set-version --bump patch -p arti-client ```
* Bump patchlevel of crates with functional changes.Gabriela Moldovan2024-03-041-4/+4
| | | | | | | | | | | | | | | | | | | | | | Functional changes were made, but no APIs were added or broken: ``` tor-events (async_broadcast 0.6.0 -> 0.7.0) tor-netdoc (signature 1 -> 2) tor-guardmgr arti-testing (config 0.13.4 -> 0.14.0) tor-persist (breaking changes gated behind experimental feature) fslock-guard (fix lockfile_has_path compilation on Windows) ``` Done with: ``` cargo set-version --bump patch -p tor-events cargo set-version --bump patch -p tor-netdoc cargo set-version --bump patch -p tor-guardmgr cargo set-version --bump patch -p arti-testing cargo set-version --bump patch -p tor-persist cargo set-version --bump patch -p fslock-guard ```
* Make test_partial_write linux-only.Nick Mathewson2024-02-291-1/+1
| | | | | | This is a temporary workaround for #1307: In `libc`, struct sigaction doesn't seem to have the same fields on all the unix platforms.
* tor-hsservice: Note builder breaking change in semver.mdGabriela Moldovan2024-02-281-0/+1
|
* Merge branch 'label_todo_504' into 'main'Nick Mathewson2024-02-221-0/+1
|\ | | | | | | | | Mark code with "TODO 504" and "TODO 789". See merge request tpo/core/arti!1992
| * Mark code with "TODO #504" and "TODO #789".Nick Mathewson2024-02-221-0/+1
| | | | | | | | | | | | | | | | I've done this by looking for every non-test instance of pick_relays or pick_n_relays, and for every non-test usage of any non-ID-related method on Relay or UncheckedRelay. Part of #504.
* | tor-hsservice: reconfigure: Allow changing rate_limit_at_introIan Jackson2024-02-213-5/+25
| |
* | tor-hsservice: reconfigure: Prove we've handled all the fieldsIan Jackson2024-02-211-3/+2
| |
* | tor-hsservice: config: max_concurrent_streams_per_circuit: comment out (fmt)Ian Jackson2024-02-211-1/+0
| | | | | | | | Remove a wanted blank line.
* | tor-hsservice: config: max_concurrent_streams_per_circuit: comment outIan Jackson2024-02-211-4/+6
| | | | | | | | | | This is not implemented. It is better to have it commented out than providing a knob that isn't connected to anything.
* | tor-hsservice: reconfigure: reject changing rate_limit_at_intro for nowIan Jackson2024-02-211-0/+6
| |
* | tor-hsservice: reconfigure: changing num_intro_points is fineIan Jackson2024-02-211-0/+5
| |
* | tor-hsservice: reconfigure: Formalise field handlingIan Jackson2024-02-211-8/+59
|/
* tor-hsservice: Clarify what UploadError::Stream is for.Gabriela Moldovan2024-02-201-1/+1
|
* tor-hsservice: Clarify what UploadError::Timeout is used for.Gabriela Moldovan2024-02-201-2/+2
|
* tor-hsservice: Log descriptor upload request errors.Gabriela Moldovan2024-02-191-1/+1
|
* tor-hsservice: Report a clearer error message for UploadError::Circuit.Gabriela Moldovan2024-02-191-1/+1
| | | | | | | | | | | | This errors such as ``` DEBUG tor_hsservice::svc::publish::backoff: failed to upload a hidden service descriptor: circuit failed attempt=2 can_retry=true ``` into ``` DEBUG tor_hsservice::svc::publish::backoff: failed to upload a hidden service descriptor: could not build circuit to HsDir attempt=2 can_retry=true ```
* tor-hsservice: Run cargo fmt.Gabriela Moldovan2024-02-191-3/+7
|
* tor-hsservice: Report IPT errors from all the IPTs we are maintaining.Gabriela Moldovan2024-02-191-1/+1
| | | | | | | We should be reporting all IPT errors, not just the ones coming from the IPTs that are "current". Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1966#note_2996978
* tor-hsservice: Replace placeholder IptError with the real IptError type.Gabriela Moldovan2024-02-193-18/+34
|
* tor-hsservice: Include the IptError in IptStatusStatus::Faulty.Gabriela Moldovan2024-02-192-22/+27
| | | | | | This will enable the `IptManager` to more accurately report its status. Part of #1083
* tor-hsservice: Move certain IptEstablisherErrors to a separate enum (fmt).Gabriela Moldovan2024-02-191-3/+7
|
* tor-hsservice: Move certain IptEstablisherErrors to a separate enum.Gabriela Moldovan2024-02-191-28/+44
| | | | | | | | | | The new `IptError` type represents an IPT error that is definitely caused by a bad IPT. `IptError` will be made public and exposed through a variant of the `Problem` enum used for status reporting. Part of #1083
* tor-hsservice: Rename IptError to IptEstablisherError.Gabriela Moldovan2024-02-191-19/+19
| | | | | | We are about to add a new `IptError` type that is only for errors that are the IPT's fault (the ones `IptEstablisherError::is_ipt_failure()` returns `true` for).
* tor-hsservice: Clarify what State::Recovering means.Gabriela Moldovan2024-02-191-10/+9
|
* tor-hsservice: Expand on State::Broken reachability notes.Gabriela Moldovan2024-02-191-1/+1
|
* tor-hsservice: Expand on reachability notes.Ian Jackson2024-02-191-2/+2
|
* tor-hsservice: Remove TODO about setting IptManager status.Gabriela Moldovan2024-02-191-2/+0
| | | | Closes #1083
* tor-hsservice: Set the IptManager state to Bootstrapping on startup.Gabriela Moldovan2024-02-191-0/+3
| | | | Part of #1083
* tor-hsservice: Include the IptManager errors in the onion service status.Gabriela Moldovan2024-02-191-1/+22
| | | | | | | | | | | | | The `IptManager` now reports its status as `Recovering` (with the `latest_error` set to `IptError::FaultyIpt`) if it doesn't have enough good IPTs to publish. Its status is `Degraded` if it has published some IPTs, but needs to establish more. Note: unconditionally setting `latest_error` to `IptError::FaultyIpt` is not entirely correct. We will need to get the actual errors, if any, from the `IptEstablisher`. Part of #1083
* tor-hsservice: Add an IptError type for status reporting.Gabriela Moldovan2024-02-194-1/+16
| | | | | | | The `OnionServiceStatus` API can now report errors coming from `IptManager`. Part of #1083
* tor-hsservice: Document the `State`s in which the service is reachable.Gabriela Moldovan2024-02-191-0/+30
| | | | Part of #1083
* tor-hsservice: Add a Degraded onion service status.Gabriela Moldovan2024-02-191-0/+14
| | | | | | | `State::Degraded` means we've successfully published a number of introduction points, but we would like to have more. Part of #1083
* tor-hsservice: Rename note_<status> to send_<status>.Gabriela Moldovan2024-02-193-12/+12
| | | | | Since these are `*StatusSender` APIs, it seems more idiomatic to call them `send*`.
* tor-hsservice: Remove extraneous blank line.Gabriela Moldovan2024-02-191-1/+0
| | | | | We don't have blank lines between the other variants, so let's remove this one too for consistency.
* tor-keymgr: Include ArtiPath in InvalidArtiPath (fmt).Gabriela Moldovan2024-02-191-2/+6
|
* tor-keymgr: Include ArtiPath in InvalidArtiPath.Gabriela Moldovan2024-02-191-1/+1
| | | | Part of #1115
* tor-keymgr: Include the ArtiPath in InvalidKeyPathComponentValue.Gabriela Moldovan2024-02-191-0/+1
| | | | | | The offending `ArtiPath` should be included in the error. Part of #1115
* tor-keymgr: Rename {to,from}_component to {to,from}_slug.Gabriela Moldovan2024-02-191-3/+3
| | | | | | | | | Originally, these functions converted to and from `ArtiPathComponent`. In !1931, we replaced `ArtiPathComponent` with `Slug` without renaming the conversion functions. Since we're converting to and from `Slug` now, I think it makes sense to rename them too. Part of #1115
* tor-keymgr: Replace KeyMgr::get_with_type with KeyMgr::get_entry.Gabriela Moldovan2024-02-191-2/+1
| | | | Part of #1271
* tor-keymgr: Rename KeyMgr::remove_with_type to KeyMgr::remove_entry.Gabriela Moldovan2024-02-192-2/+2
| | | | Part of #1271
* tor-keymgr: Make KeyMgr::remove_with_type take a KeystoreEntry.Gabriela Moldovan2024-02-192-11/+2
| | | | | | | NB: `KeyMgr::remove_with_type` will need to be renamed to `KeyMgr::remove_entry`. Part of #1271
* tor-keymgr: Make KeyMgr::list_matching return `KeystoreEntry`s.Gabriela Moldovan2024-02-193-7/+12
| | | | Part of #1271
* Merge branch 'expire-ipts-bis' into 'main'Nick Mathewson2024-02-155-101/+129
|\ | | | | | | | | Code cleanup for IPT external state expiry See merge request tpo/core/arti!1982
| * tor-hsservice: ipt mgr: Remove/downgrade two allowsIan Jackson2024-02-131-2/+1
| |
| * tor-hsservice: ipt mgr: expiry: Add some commentsIan Jackson2024-02-131-0/+4
| |
| * tor-hsservice: ipt mgr: expiry: Break out all_ipts (fmt)Ian Jackson2024-02-131-4/+1
| |