| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | |
|
| | |
|
| |
|
|
| |
And clarify docs for the *current* ipt functions.
|
| |
|
|
|
| |
"current" has a special meaning here: it means an IPT that we haven't
replaced with another at the same relay due to number of requests.
|
| | |
|
| |
|
|
|
| |
The private ExpiryError type is now err::StateExpiryError.
We'll fix up the local alias in the HasKind impl in a moment.
|
| | |
|
| | |
|
| |
|
|
|
| |
This test detects the bug mentioned here
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1977#note_2995265
|
| | |
|
| |
|
|
| |
This isn't strictly necessary, but it's better.
|
| |
|
|
| |
This seemed to warrant some discussion and a cross-reference.
|
| |
|
|
|
|
| |
Prompted by
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1977#note_2994999
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1977#note_2995000
|
| |
|
|
|
|
|
|
|
| |
Prompted by
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1977#note_2994998
Removing the intermediate variable removes the possibility that the
information in it could fail to be transferred to the main mutable
state, so we don't need the IEFE any more.
|
| |
|
|
| |
We do have some tests, but they're not as comprehensive as we'd like.
|
| | |
|
| |
|
|
|
|
| |
Without this, we can regenerate the same IptLocalIds (etc.) on
shutdown/restart (which involves calling startup again within a test
case).
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
Indentation left anmolaous briefly for ease of review.
|
| |
|
|
|
| |
The expiry code is going to want this too. We should at least make a
constant of it.
|
| | |
|
| |
|
|
|
|
|
|
| |
We shouldn't keep the same IPT relays just because they're not
working! Firstly, that's just silly, and secondly, for privacy
reasons we want to put a limit on teh lifetime anyway.
Indentation left anmolaous briefly for ease of review.
|
| | |
|
| |
|
|
|
|
|
| |
Now that `KeyMgr::generate` returns the generated key, we can tidy up
`get_or_gen_key`.
Part of #1074
|
| | |
|
| |
|
|
| |
We're just using fslock-guard now.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
| |
The new state_dir types require &mut for storing, which is correct,
but that means we can't have it in Immutable.
|
| |
|
|
|
|
|
| |
These are here because that's what you get from the tor_persist
singleton StageMgr API (for type erasure reasons). We're going to
change these to tor_persist::state_dir types and those don't involve
Arcs.
|
| |\
| |
| |
| |
| |
| |
| | |
Clean up, tune, and correct various parameters related to introduction points.
Closes #1210
See merge request tpo/core/arti!1924
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(Also, correct the comments that describe them.)
We may as well match the spec names when they aren't completely
bogus.
We are already renaming these parameters for this release, so it
isn't an additional breaking change.
|
| | |
| |
| |
| | |
See #1210 "question 4".
|
| | |
| |
| |
| |
| | |
This makes us more spec-conformant. See discussion at #1210
"question 3".
|
| | |
| |
| |
| | |
See #1210 "question 2" for more discussion here.
|
| | |
| |
| |
| | |
See discussion and rationale on #1210 "question 1".
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
HSS: Mark an Ipt as faulty if it fails continuously for 15 minutes.
Closes #1248
See merge request tpo/core/arti!1915
|
| | |/
| |
| |
| | |
Closes #1248.
|
| |/
|
|
|
| |
Introduce the crate, move the code motion, and make minimal necessary
changes.
|
| | |
|
| |
|
|
| |
Part of #1083
|
| | |
|
| |
|
|
|
|
| |
This introduces an internal `OnionServiceStateMgr` trait, which enables
us to store the `StateMgr` inside the `OnionServiceState` (without
having to parameterize `OnionServiceState` on `S: StateMgr`).
|
| |
|
|
|
|
| |
All appropriate checks here should be in `is_hs_intro_point()`.
Closes #1211.
|
| | |
|
| |
|
|
| |
(We can revert this later if it turns out to be needed.)
|
| | |
|
| |
|
|
| |
I have tagged this as UX but *not* MUST.
|