summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | 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: Pick a better name for error variable.Ian Jackson2024-02-191-1/+1
| |
* | tor-keymgr: Add more context to errors returned from HsId::from_slug.Gabriela Moldovan2024-02-191-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 Moldovan2024-02-191-5/+11
| |
* | tor-keymgr: Add more context to InvalidKeyPathComponentValue errors.Gabriela Moldovan2024-02-191-9/+7
| |
* | tor-keymgr: Document what context to add to invalid slug errors.Gabriela Moldovan2024-02-191-0/+7
| | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1960#note_2994317
* | tor-keymgr: Downgrade a documentation TODO.Gabriela Moldovan2024-02-191-1/+1
| | | | | | | | | | The tor-keymgr crate *is* documented, but could use a better README and some examples and/or usage guides.
* | tor-keymgr: Reword the README.Gabriela Moldovan2024-02-191-24/+30
| | | | | | | | | | | | This rewords the docs for clarity. Part of #1115
* | tor-keymgr: Remove vestigial comment.Gabriela Moldovan2024-02-191-2/+0
| | | | | | | | This removes a remnant of a now-gone TODO.
* | tor-keymgr: Make InvalidKeyPathComponentValue public.Gabriela Moldovan2024-02-192-3/+5
| | | | | | | | | | It appears within the public API (it is the error type returned from `KeySpecifierComponent`), so let's make it public.
* | tor-keymgr: Make InvalidKeyPathComponentValue an enum.Gabriela Moldovan2024-02-191-11/+20
| | | | | | | | | | | | | | | | | | Previously, `InvalidKeyPathComponentValue` was a single error type, with the error message hard-coded to "invalid key denotator". This was wrong, because this error is used for other types of invalid components too (not just for invalid denotators). Part of #1115
* | tor-keymgr: Add a note about KeyPathError.Gabriela Moldovan2024-02-191-0/+10
| |
* | tor-keymgr: Include the ArtiPath in PatternNotMatched.Gabriela Moldovan2024-02-192-6/+3
| | | | | | | | | | | | | | All `KeyPathError` variants now include the `ArtiPath` that caused the error. Part of #1115
* | tor-keymgr: Include ArtiPath in InvalidArtiPath (fmt).Gabriela Moldovan2024-02-192-5/+19
| |
* | tor-keymgr: Include ArtiPath in InvalidArtiPath.Gabriela Moldovan2024-02-193-4/+11
| | | | | | | | Part of #1115
* | tor-keymgr: Include the ArtiPath in InvalidKeyPathComponentValue.Gabriela Moldovan2024-02-194-4/+10
| | | | | | | | | | | | 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-195-24/+25
| | | | | | | | | | | | | | | | | | 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
* | Merge branch 'keymgr-list-matching' into 'main'gabi-2502024-02-196-48/+109
|\ \ | | | | | | | | | | | | | | | | | | tor-keymgr: Return KeystoreEntryDescriptors from KeyMgr::list_matching Closes #1271 See merge request tpo/core/arti!1988
| * | tor-keymgr: Make the &KeystoreId getter `as_copy`.Gabriela Moldovan2024-02-191-2/+4
| | |
| * | tor-keymgr: Test that KeyMgr::list_matching returns the right descriptors.Gabriela Moldovan2024-02-191-2/+16
| | |
| * | tor-keymgr: Test KeyMgr::{get_entry, remove_entry}.Gabriela Moldovan2024-02-191-0/+27
| | |
| * | tor-keymgr: Remove a TODO.Gabriela Moldovan2024-02-191-2/+0
| | | | | | | | | | | | | | | I am not so sure it makes sense to unify these functions, so let's remove the TODO.
| * | tor-keymgr: Remove outdated reference to KeyMgr::get_with_type.Gabriela Moldovan2024-02-191-1/+1
| | |
| * | tor-keymgr: Replace KeyMgr::get_with_type with KeyMgr::get_entry (fmt).Gabriela Moldovan2024-02-191-4/+1
| | |
| * | tor-keymgr: Replace KeyMgr::get_with_type with KeyMgr::get_entry.Gabriela Moldovan2024-02-193-10/+11
| | | | | | | | | | | | Part of #1271
| * | tor-keymgr: Rename KeyMgr::remove_with_type to KeyMgr::remove_entry.Gabriela Moldovan2024-02-194-9/+15
| | | | | | | | | | | | Part of #1271
| * | tor-keymgr: Make KeyMgr::remove_with_type take a KeystoreEntry (fmt).Gabriela Moldovan2024-02-191-4/+1
| | |
| * | tor-keymgr: Make KeyMgr::remove_with_type take a KeystoreEntry.Gabriela Moldovan2024-02-194-16/+6
| | | | | | | | | | | | | | | | | | | | | NB: `KeyMgr::remove_with_type` will need to be renamed to `KeyMgr::remove_entry`. Part of #1271
| * | tor-keymgr: Derive From for KeystoreSelector.Gabriela Moldovan2024-02-191-2/+2
| | | | | | | | | | | | We will soon use this in `KeyMgr`.
| * | tor-keymgr: Make KeyMgr::list_matching return `KeystoreEntry`s.Gabriela Moldovan2024-02-195-9/+20
| | | | | | | | | | | | Part of #1271
| * | tor-keymgr: Add KeystoreEntry.Gabriela Moldovan2024-02-193-1/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This type will soon replace `(KeyPath, KeyType)` in `KeyMgr::list_matching`. The KeystoreEntry documentation mentions a couple of functions that don't exist right now (they will be added in a subsequent commit). Part of #1271
* | | Merge branch 'better_hints' into 'main'Ian Jackson2024-02-197-56/+195
|\ \ \ | |/ / |/| | | | | | | | | | | | | | Refactor and improve error hinting. Closes #1165 See merge request tpo/core/arti!1986
| * | Add tests for finding (or not) hints in our error types.Nick Mathewson2024-02-161-0/+58
| | |
| * | Discourage providing HintableErrorImpl without using the macro.Nick Mathewson2024-02-161-3/+10
| | |
| * | Rename one of the hint methods to hint_specificNick Mathewson2024-02-161-3/+10
| | |