| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Move helpers from tor-hsservice to tor-netdir. | Wesley Aptekar-Cassels | 2024-11-25 | 1 | -1/+1 |
| | | | | | | These helpers seem potentially broadly useful, and only really discoverable if they're here. | ||||
| * | tor-hsservice: Do not error if there are more than ↵ | Gabriela Moldovan | 2024-08-05 | 1 | -10/+0 |
| | | | | | | | MAX_RESTRICTED_DISCOVERY_CLIENTS. Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2266#note_3051758 | ||||
| * | tor-hsservice: Use the configured authorized clients when encrypting the ↵ | Gabriela Moldovan | 2024-08-05 | 1 | -0/+7 |
| | | | | | descriptor. | ||||
| * | tor-hsservice: Store the client keys in RunningOnionService. | Gabriela Moldovan | 2024-08-05 | 1 | -0/+10 |
| | | |||||
| * | tor-hsservice: Add OnionServiceBuilder, deprecate OnionService::new. | Gabriela Moldovan | 2024-07-15 | 1 | -0/+6 |
| | | | | | Closes #1490 | ||||
| * | Use tor_basic_utils::PathExt::display_lossy | Ian Jackson | 2024-03-05 | 1 | -2/+2 |
| | | | | | | Change Path::display to this new function, in call sites where it's being used for a diagnostic. | ||||
| * | tor-hsservice: prelude: Move imports from err.rs | Ian Jackson | 2024-03-05 | 1 | -12/+1 |
| | | |||||
| * | tor-hsservice: Move rend_handshake.rs out of svc | Ian Jackson | 2024-03-05 | 1 | -1/+1 |
| | | |||||
| * | tor-hsservice: ipt mgr: Move/rename to StateExpiryError (followup) | Ian Jackson | 2024-02-13 | 1 | -4/+4 |
| | | |||||
| * | tor-hsservice: ipt mgr: Move/rename to StateExpiryError | Ian Jackson | 2024-02-13 | 1 | -0/+37 |
| | | | | | | The private ExpiryError type is now err::StateExpiryError. We'll fix up the local alias in the HasKind impl in a moment. | ||||
| * | tor-hsservice: Use ErrorKind::KeystoreAccessFailed for KeystoreRace errors. | Gabriela Moldovan | 2024-02-01 | 1 | -1/+1 |
| | | |||||
| * | tor-hsservice: Add FatalError::KeystoreRace. | Gabriela Moldovan | 2024-02-01 | 1 | -0/+13 |
| | | | | | This will be used when a keystore race is detected. | ||||
| * | tor-hsservice: Remove now-unused imports | Ian Jackson | 2024-02-01 | 1 | -1/+0 |
| | | |||||
| * | tor-hsservice: Abolish StartupError::StateLocked | Ian Jackson | 2024-02-01 | 1 | -5/+0 |
| | | | | | This is now tor_persist::Error containing ErrorSource::AlreadyLocked. | ||||
| * | tor-hsservice: Use tor_persist::state_dir | Ian Jackson | 2024-02-01 | 1 | -5/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | We no longer do replay log locking in IptManager::new. Instead, we rely on the acquire_instance call in OnionService::launch, which ends up with ipt_mgr getting an InstanceHandle (which contains a lock guard). OnionServiceStateMgr is abolished; it existed to deal with the generics in the tor_persist::StateMgr API. state_dir has no generics (other than the T being loaded/stored). Many places (structs and argument lists) now have state_dir types which embody a path (or a CheckeDir) along with a lock, rather than separate path+lock+mistrust. The creation/startup code uses the new calls from state_dir. Other more minor changes: - StartupError::StateDirectoryInaccessible contains tor_persist::Error - test::create_storage_handles_from_state_dir changed and renamed, from _from_state_mgr. - replay::PersistFile's (separate) file lock is now fslock_guard's | ||||
| * | tor-hsservice: Introduce StartupError::StateDirectoryInaccessibleIo | Ian Jackson | 2024-02-01 | 1 | -0/+21 |
| | | | | | | | We're going to change the payload of StateDirectoryInaccessible to tor_persist::Error, since that's what tor_persist::state_dir gives us, but then we can't use it here. | ||||
| * | hss: Downgrade MissingHsIdKeypair TODO | Nick Mathewson | 2024-01-24 | 1 | -1/+1 |
| | | | | | | This is not typically wrong, but it may become wrong if we do not tidy up MissingHsIdKeypair in the future. The TODO now refers to | ||||
| * | hss: Return LocalResourceAlreadyInUse on StateLocked. | Nick Mathewson | 2024-01-23 | 1 | -2/+1 |
| | | |||||
| * | hsservice: Convert TODO about behavior on storage errors to #1226. | Nick Mathewson | 2024-01-12 | 1 | -1/+5 |
| | | |||||
| * | hsservice: Turn FatalError todo into part of #1083. | Nick Mathewson | 2024-01-12 | 1 | -2/+2 |
| | | |||||
| * | hsservice: Downgrade TODO HSS about internal fn on IptStoreError | Nick Mathewson | 2024-01-12 | 1 | -1/+1 |
| | | |||||
| * | hsservice: Move "Cleanup ErrorKind" TODOs to #1225. | Nick Mathewson | 2024-01-12 | 1 | -2/+2 |
| | | |||||
| * | Fix typos | Dimitris Apostolou | 2024-01-08 | 1 | -1/+1 |
| | | |||||
| * | tor-hsservice: Make IPT logs be persistent | Ian Jackson | 2023-12-13 | 1 | -0/+9 |
| | | |||||
| * | tor-hsservice: Add a NetdirProviderShutdown FatalError variant. | Gabriela Moldovan | 2023-12-13 | 1 | -1/+7 |
| | | | | | This is another type of fatal error. | ||||
| * | tor-hsservice: Add a FatalError::from_spawn. | Gabriela Moldovan | 2023-12-13 | 1 | -0/+12 |
| | | | | | We're about to use this (in the publisher reactor). | ||||
| * | tor-hsservice: Use keystore to store and reuse IPT keys | Ian Jackson | 2023-12-04 | 1 | -0/+8 |
| | | |||||
| * | tor-hsservice: Provide StartupError variants for failed state reads | Ian Jackson | 2023-12-04 | 1 | -0/+26 |
| | | |||||
| * | tor-hsservice: Introduce IptStoreError | Ian Jackson | 2023-12-04 | 1 | -0/+49 |
| | | | | | | | | | | | If we can't store IPT details, we mustn't publish the corresponding IPT. But that's not fatal; maybe we can store later. So introduce a new IptStoreError type, and change the return value from some functions that are going to be able to fail that way. This introduces a new TODO HSS: we need the publisher to be able to retry after such a failure. | ||||
| * | tor-keymgr: Add a top-level error type. | Gabriela Moldovan | 2023-11-21 | 1 | -3/+2 |
| | | | | | | | | | | | | | | Previously, the `tor_keymgr::Error` type was `Box<dyn KeystoreError>`. This forced us to impl `KeystoreError` for any error returned by the keymgr (including those that were not coming from a `Keystore` impl). Now, `tor_keymgr::Error` is an non-exhaustive enum and the `Box<dyn KeystoreError>` opaque error type is only returned from `Keystore` impls The reason we're keeping the `dyn KeystoreError` error type is because it enables `Keystore` implementors to use their own error types. Without it, they would have to choose from our (closed) set of error variants, which may not be suitable for their keystore. See #901. | ||||
| * | tor-hsservice: Update MissingHsIdKey docs, remove outdated TODO HSS. | Gabriela Moldovan | 2023-11-20 | 1 | -6/+1 |
| | | |||||
| * | tor-hsservice: Rename MissingKey to MissingHsIdKeypair. | Gabriela Moldovan | 2023-11-20 | 1 | -3/+4 |
| | | | | | | | | | | We only return this error if the identity key is missing from the keystore. This change will also help us abolish the `.role()` method on `KeySpecifier`s (it was only needed for populating the string of a `MissingKey` error). | ||||
| * | HSS: impl HasKind for FatalError | Ian Jackson | 2023-11-01 | 1 | -0/+13 |
| | | |||||
| * | tor-hsservice: Add some TODOs about error handling. | Gabriela Moldovan | 2023-10-19 | 1 | -0/+5 |
| | | |||||
| * | tor-hsservice: Replace placeholder subcredentials with values from the keystore. | Gabriela Moldovan | 2023-10-19 | 1 | -0/+8 |
| | | |||||
| * | tor-hsservice: Make OnionServices auto-generate the hs_id, if it's missing. | Gabriela Moldovan | 2023-10-09 | 1 | -0/+17 |
| | | |||||
| * | hss: implement HasKind for several errors. | Nick Mathewson | 2023-09-27 | 1 | -0/+19 |
| | | |||||
| * | tor-hsservice: Make Publisher::launch return a StartupError. | Gabriela Moldovan | 2023-09-27 | 1 | -11/+0 |
| | | | | | | | This simplifies error handling in `OnionService`. Closes #1052 | ||||
| * | hss: Implement HasKind for StartupError | Nick Mathewson | 2023-09-26 | 1 | -1/+15 |
| | | |||||
| * | hss: fix error return from OnionService::launch() | Nick Mathewson | 2023-09-21 | 1 | -0/+8 |
| | | |||||
| * | hss: start filling in a "launch" function for OnionService. | Nick Mathewson | 2023-09-21 | 1 | -0/+4 |
| | | |||||
| * | HSS: Enable RendRequests to be answered. | Nick Mathewson | 2023-09-20 | 1 | -2/+12 |
| | | | | | | This requires yet more plumbing—this time, of HsCircPool and NetDirProvider. | ||||
| * | tor-hsservice: About half of an IPT Manager | Ian Jackson | 2023-08-23 | 1 | -1/+20 |
| | | | | | There are many TODOs and no tests, but it does compile. | ||||
| * | tor-hsservice errors: Distinguish operational errors by context | Ian Jackson | 2023-08-17 | 1 | -2/+46 |
| | | | | | | | | | | | At the very least, I need FatalError to be distinct: IptEstablisher::new ought not to fail unless everything is terrible. Add a the Spawn variant to FatalError (that we'll need soon) and the Bug variant (which it seems likely we might need). This also gets rid of the crate-level Result alias. | ||||
| * | Sketch an API for onion services. | Nick Mathewson | 2023-01-24 | 1 | -0/+8 |
