| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | tor-hsservice: reconfigure: Formalise field handling | Ian Jackson | 2024-02-21 | 1 | -8/+59 | |
| |/ | ||||||
| * | Merge branch 'fast_and_stable' into 'main' | Nick Mathewson | 2024-02-20 | 14 | -42/+264 | |
| |\ | | | | | | | | | | | | | Require the Fast and Stable flags as appropriate. Closes #1100 See merge request tpo/core/arti!1976 | |||||
| | * | PathConfigBuilder: Actually provide the long_lived_ports setters | Ian Jackson | 2024-02-20 | 1 | -0/+6 | |
| | | | ||||||
| | * | Use list_builder and sub-builder pattern for long_lived_ports. | Nick Mathewson | 2024-02-20 | 1 | -6/+18 | |
| | | | ||||||
| | * | Note a calculation we can clean up after doing spec work. | Nick Mathewson | 2024-02-20 | 1 | -1/+3 | |
| | | | ||||||
| | * | Add caveats on is_flagged_guard, and note possible deprecation | Nick Mathewson | 2024-02-20 | 1 | -1/+15 | |
| | | | ||||||
| | * | Add and use "UncheckedRelay::is_suitable_as_guard" | Nick Mathewson | 2024-02-20 | 2 | -1/+6 | |
| | | | ||||||
| | * | Teach *CircUsage structs about stability. | Nick Mathewson | 2024-02-20 | 5 | -29/+122 | |
| | | | | | | | | | | | | | | | | | | | | | | | This lets us check long_lived_ports only when we are constructing a TargetCircUsage, and lets us remember whether or not the circuit we've built is suitable for non-long-lived ports. It also lets us decide whether existing circuits are compatible with new requests. Closes #1100. | |||||
| | * | Add a couple of TODOs about Stable-based path selection. | Nick Mathewson | 2024-02-20 | 2 | -0/+6 | |
| | | | ||||||
| | * | When building paths, require the Stable flag as appropriate | Nick Mathewson | 2024-02-20 | 2 | -2/+33 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | The Stable flag means that circuits build through a given relay are not likely to get closed precipitously. (Currently, the authorities guess this by looking at the relay's mean time between failures.) Generally speaking, paths must be Stable if: * They are going to get used for a rendezvous point. * They are going to get used for an introduction point. * They are going to get used for exiting to a member of long_lived_ports. | |||||
| | * | Add a configuration option for long_lived_ports. | Nick Mathewson | 2024-02-20 | 3 | -0/+21 | |
| | | | ||||||
| | * | Require the Fast flag on all randomly selected relays. | Nick Mathewson | 2024-02-20 | 1 | -9/+16 | |
| | | | | | | | | | | | | | This matches the behavior of C tor. Part of #1100. | |||||
| | * | Only pick Fast-flagged relays as directory caches | Nick Mathewson | 2024-02-20 | 1 | -1/+3 | |
| | | | | | | | | | | | | | Matches the behavior of C tor. Part of #1100. | |||||
| | * | Only pick Fast relays as introduction points. | Nick Mathewson | 2024-02-20 | 1 | -1/+1 | |
| | | | | | | | | | This matches the behavior of C tor. Part of #1100. | |||||
| | * | Require that guards are Fast and Stable. | Nick Mathewson | 2024-02-20 | 4 | -4/+12 | |
| | | | | | | | | | | | | | This matches the behavior of C tor. Part of #1100. | |||||
| | * | netdir: Add Relay::is_flagged_{fast,stable} methods. | Nick Mathewson | 2024-02-12 | 2 | -0/+15 | |
| | | | ||||||
| * | | Merge branch 'publisher-errors' into 'main' | Alexander Færøy | 2024-02-20 | 1 | -5/+5 | |
| |\ \ | | | | | | | | | | | | | tor-hsservice: Publisher error message improvements See merge request tpo/core/arti!1991 | |||||
| | * | | tor-hsservice: Clarify what UploadError::Stream is for. | Gabriela Moldovan | 2024-02-20 | 1 | -1/+1 | |
| | | | | ||||||
| | * | | tor-hsservice: Clarify what UploadError::Timeout is used for. | Gabriela Moldovan | 2024-02-20 | 1 | -2/+2 | |
| | | | | ||||||
| | * | | tor-hsservice: Log descriptor upload request errors. | Gabriela Moldovan | 2024-02-19 | 1 | -1/+1 | |
| | | | | ||||||
| | * | | tor-hsservice: Report a clearer error message for UploadError::Circuit. | Gabriela Moldovan | 2024-02-19 | 1 | -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 ``` | |||||
| * | | Merge branch 'bw-rate-limit-design' into 'main' | Nick Mathewson | 2024-02-19 | 1 | -0/+232 | |
| |\ \ | | | | | | | | | | | | | Add design note about bandwidth rate limiting. See merge request tpo/core/arti!1965 | |||||
| | * | | Tweak burst/rate configuration struct. | Nick Mathewson | 2024-02-19 | 1 | -3/+3 | |
| | | | | ||||||
| | * | | Extend bandwidth rate limiting note based on conversation. | Nick Mathewson | 2024-02-18 | 1 | -4/+176 | |
| | | | | ||||||
| | * | | Add design note about bandwidth rate limiting. | Nick Mathewson | 2024-02-06 | 1 | -0/+60 | |
| | | | | ||||||
| * | | | Merge branch 'ipt-mgr-status' into 'main' | gabi-250 | 2024-02-19 | 6 | -77/+201 | |
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | tor-hsservice: Report the IptManager status Closes #1083 See merge request tpo/core/arti!1966 | |||||
| | * | | | tor-hsservice: Run cargo fmt. | Gabriela Moldovan | 2024-02-19 | 1 | -3/+7 | |
| | | | | | ||||||
| | * | | | tor-hsservice: Report IPT errors from all the IPTs we are maintaining. | Gabriela Moldovan | 2024-02-19 | 1 | -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 Moldovan | 2024-02-19 | 3 | -18/+34 | |
| | | | | | ||||||
| | * | | | tor-hsservice: Include the IptError in IptStatusStatus::Faulty. | Gabriela Moldovan | 2024-02-19 | 2 | -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 Moldovan | 2024-02-19 | 1 | -3/+7 | |
| | | | | | ||||||
| | * | | | tor-hsservice: Move certain IptEstablisherErrors to a separate enum. | Gabriela Moldovan | 2024-02-19 | 1 | -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 Moldovan | 2024-02-19 | 1 | -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 Moldovan | 2024-02-19 | 1 | -10/+9 | |
| | | | | | ||||||
| | * | | | tor-hsservice: Expand on State::Broken reachability notes. | Gabriela Moldovan | 2024-02-19 | 1 | -1/+1 | |
| | | | | | ||||||
| | * | | | tor-hsservice: Expand on reachability notes. | Ian Jackson | 2024-02-19 | 1 | -2/+2 | |
| | | | | | ||||||
| | * | | | tor-hsservice: Remove TODO about setting IptManager status. | Gabriela Moldovan | 2024-02-19 | 1 | -2/+0 | |
| | | | | | | | | | | | | | | | | | Closes #1083 | |||||
| | * | | | tor-hsservice: Set the IptManager state to Bootstrapping on startup. | Gabriela Moldovan | 2024-02-19 | 1 | -0/+3 | |
| | | | | | | | | | | | | | | | | | Part of #1083 | |||||
| | * | | | tor-hsservice: Include the IptManager errors in the onion service status. | Gabriela Moldovan | 2024-02-19 | 1 | -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 Moldovan | 2024-02-19 | 4 | -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 Moldovan | 2024-02-19 | 1 | -0/+30 | |
| | | | | | | | | | | | | | | | | | Part of #1083 | |||||
| | * | | | tor-hsservice: Add a Degraded onion service status. | Gabriela Moldovan | 2024-02-19 | 1 | -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 Moldovan | 2024-02-19 | 3 | -12/+12 | |
| | | | | | | | | | | | | | | | | | | | | | Since these are `*StatusSender` APIs, it seems more idiomatic to call them `send*`. | |||||
| | * | | | tor-hsservice: Remove extraneous blank line. | Gabriela Moldovan | 2024-02-19 | 1 | -1/+0 | |
| |/ / / | | | | | | | | | | | | | We don't have blank lines between the other variants, so let's remove this one too for consistency. | |||||
| * | | | Merge branch 'keymgr-apis2' into 'main' | gabi-250 | 2024-02-19 | 7 | -89/+149 | |
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | tor-keymgr: Error type improvements Closes #1115 See merge request tpo/core/arti!1960 | |||||
| | * | | | tor-keymgr: Pick a better name for error variable. | Ian Jackson | 2024-02-19 | 1 | -1/+1 | |
| | | | | | ||||||
| | * | | | tor-keymgr: Add more context to errors returned from HsId::from_slug. | Gabriela Moldovan | 2024-02-19 | 1 | -5/+4 | |
| | | | | | | | | | | | | | | | | | | | | | `InvalidKeyPathComponentValue::Slug` now has to wrap a `String`, because we can't get `HsIdParse` errors as static strings. | |||||
| | * | | | tor-keymgr: Add more context to InvalidKeyPathComponentValue errors (fmt). | Gabriela Moldovan | 2024-02-19 | 1 | -5/+11 | |
| | | | | | ||||||
| | * | | | tor-keymgr: Add more context to InvalidKeyPathComponentValue errors. | Gabriela Moldovan | 2024-02-19 | 1 | -9/+7 | |
| | | | | | ||||||
| | * | | | tor-keymgr: Document what context to add to invalid slug errors. | Gabriela Moldovan | 2024-02-19 | 1 | -0/+7 | |
| | | | | | | | | | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1960#note_2994317 | |||||
