| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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.
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
tor-guardmgr: Fix spec link in README.
See merge request tpo/core/arti!1980
|
| | | | | | |
|
| |/ / / /
| | | |
| | | |
| | | | |
The old link now 404s, so let's link to spec.torproject.org instead.
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
tor-hsservice: Periodically reupload the descriptor.
Closes #1241
See merge request tpo/core/arti!1971
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | | |
Part of #1241
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
According to the spec, the publisher needs to periodically reupload the
descriptor.
```
Specifically, every time a hidden service publishes its descriptor, it also sets up a timer for a random time
between 60 minutes and 120 minutes in the future. When the timer triggers, the hidden service needs to
publish its descriptor again to the responsible HSDirs for that time period. [TODO SPEC: Control republish period
using a consensus parameter?]
```
After each `upload_for_time_period()`, the publisher now sets a timer as
described in the spec, by pushing a `ReuploadTimer` into its
`reupload_timers` heap.
Closes #1241
|
| | | | | | |
|
| | | | | | |
|
| |/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We will soon need the ability to trigger a descriptor reupload for a
specific time period.
Part of #1241
|
| |\ \ \ \
| |/ / /
|/| | |
| | | |
| | | | |
Improve replay log fork test
See merge request tpo/core/arti!1974
|
| | | | |
| | | |
| | | |
| | | | |
Will make the situation in #1264 clear, I think.
|
| | | | | |
|
| |/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Something libtest is doing hides the child stderr/stdout from the test
log, when --nocapture is not given.
With these changes, I see much more output in failing cases or with
--nocapture. In the case mentioned in #1264, the message
"we survived raise SIGUSR2" is now printed both with and without --nocapture.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
educe: Use std's default impls instead in a number of places
See merge request tpo/core/arti!1975
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Reviewing uses of `#[educe(default)]`, I came across these two places
where it was applied to a non-generic struct without any special
attributes on fields. std's derive will do just as well here.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Since Rust 1.66, std's default works properly for enums, provided that
the default variant is a unit.
Review all uses of `#[educe(default)]` on enums and replace them with
std where possible, which is most of them.
In 1.66 and later, std's `#[derive(Default)]` doesn't infer any
generic bounds on the derived impl, where it's an enum - since the
unit variant can always be constructed. So this change doesn't add
any generic bounds and is not API-visible.
|
| |\ \ \ \
| |/ / /
|/| | |
| | | |
| | | | |
Design sketch for vanguards implementation
See merge request tpo/core/arti!1970
|
| | | | | |
|
| | | |/
| |/| |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
hsproxy: Improve error messages.
See merge request tpo/core/arti!1973
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When giving an error message about an hsrproxy configuration:
1) mention that this is for an onion service.
2) mention what the invalid text was.
Part of #1266
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
maint/fixup-features: Make part of the main workspace
Closes #1263
See merge request tpo/core/arti!1969
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | | |
maint/cargo_sort complains about this.
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We don't have any of these lints yet but let's do this tidying while
we're here. The test lint block seems appropriate for this
maintenance utility, at least right now while we're not making it a
proper external published thing.
Override the two lints that currently trip.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This ties it into everything, so we run CI on it, have it in our main
lockfile, and so on.
|
| | | | | | |
|
| | | |/ /
| |/| | |
|
| |\ \ \ \
| |_|/ /
|/| | |
| | | |
| | | |
| | | |
| | | | |
state_dir: implement instance iteration and expiry
Closes #1163
See merge request tpo/core/arti!1968
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
Actually, we want to test handling of the string with whatever the
extension would be, if it changed.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
And replace ".lock" with it.
Now the only place that the "lock" extension this is still present as
a literal is in a test.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
And replace "lock" with it. This is the first half of not open-coding
this; the sites where the literal string is ".lock" are in the next
commit, to help avoid the slip of using the wrong constant.
|
| | | | | |
|