| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
We don't need to say it doesn't adhere to semver since every release
of tor-netdoc is uses a semver-breaking version.
But we do need to say we don't take any care about compatibility.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This was never documented. The relevant code is now part of
"incomplete".
Part of #2492.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This was never documented. The relevant code is now either
unconditional, or part of "incomplete".
Part of #2492.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
These were deprecated in the last release. Now we can remove them.
Also remove ns_consensus which was never really documented.
Part of #2492.
|
| |\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Add a generic `tor-dirpublish` for documents that have to be uploaded to multiple places
Closes #2499
See merge request tpo/core/arti!3924
|
| | | | | | | | | | | |
|
| | | | | | | | | | | |
|
| | | | | | | | | | | |
|
| | | | | | | | | | | |
|
| | | | | | | | | | | |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
RequestBody is now just an `Option<Arc<str>>` internally,
and EncodedRequest is much simpler.
|
| | | | | | | | | | | |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
This crate is a generalization of the logic for uploading we
currently have in tor-hsservice to handle uploading a (possibly
changing) document to a (possibly changing) list of targets.
It supports different kinds of documents, different kinds of
document targets, and different ways to upload.
Currently only direct HTTP uploads are supported;
we can add others in the future (and we'll have to,
for bridges and onion services.)
Closes #2499.
|
| | | | | | | | | | | |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
(Also refactor the code for POST requests into a new macro,
since it would otherwise get quite duplicated.)
|
| | | | | | | | | | | |
|
| | | | | | | | | | | |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
This saves a little memory, but the technique will help save more
memory for other uploads.
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
This required a change to the hsservice tests, which previously
assumed that we'd perform one write per request.
|
| | | |/ / / / / / /
| |/| | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
I'm going to use this to avoid copying when uploading large
documents.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This commit changes the name of all (except accept/reject) real items in
RouterDesc to their proper name as found in the spec.
This is a breaking change and semver.md has been updated properly.
In the instanciation of RouterDesc in the legacy parser, we now use a
"weird" syntax of some fields using a different name throughout the
code, but that is ok. Changing this would make the diff way larger at
the risk of breaking things, especially because many variables such as
identity_cert get shadowed countless times within the function, making
it harder and error prone to change.
|
| | | | | | | | | | |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This commit reorders the real RouterDesc items according to the spec.
Unfortunately, the names of those are not real yet, meaning that
verifying this is somewhat hard. Personally, I recommend to verify that
this commit does not add/remove lines using --color-moved. The correct
order is probably easier to verify with the next commit applied that
adds nice rustdoc comments explaining to which fields in the spec the
respective items belong. This is a bit of a chicken egg situation but
if I would have added the nice rustdoc comments first, this diff would
have been awful to review, because the hunks of reordering the nice
rustdoc comments included are awful to review, so please bear with me
for the next commit.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This commit reorders the RouterDesc struct into virtual and real items,
with real items being items that actually exist (although potentially
under a different name) in router descriptors. Virtual items on the
other hand do not exist this way in router descriptors and have to be
removed at one point or another.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Makes this much nicer to read.
|
| |\ \ \ \ \ \ \ \ \
| |/ / / / / / / /
|/| | | | | | | |
| | | | | | | | |
| | | | | | | | | |
tor-netdoc: Combine two hex encoding loops into a function
See merge request tpo/core/arti!3947
|
| | | | | | | | | | |
|
| |\ \ \ \ \ \ \ \ \
| |_|/ / / / / / /
|/| | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Update code to actually eliminate fslock *and* the LockFile type.
See merge request tpo/core/arti!3954
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
With dropping the fslock crate, we lost this feature flag from _its_
use of winapi.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This mainly amounts to clarifying some of our windows desiderata,
and removing the final refrences to fslock.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
We can't actually open a file on wasm-unknown-unknown,
but it's more convenient for us if we don't have to conditionally
compile this crate every place that uses it.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
We can do this since our msrv is now 1.89.0, where
File::lock is supported.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
There were two that relied on the the ability to have a lock
in an unlocked state. Instead, we replace those with
Option<LockFileGuard> or its equivalent.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
"Stored" is more accurate than "current".
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
The blinded HsIds were used a proxy for the time periods, but it's
better to just compare the TPs directly.
Part of #966
|
| | | | | | | | | | |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This will soon need to be copied into `HsDescForTp`.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
We no longer consider the HsDir rate-limited if its `requery == now`.
This was caught by the new tests.
|
| | | | | | | | | | |
|
| | | | | | | | | | |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This needs to be dropped before the next test (because the test will try
to acquire the lock inside the `Mocks` impl).
|
| | | | | | | | | | |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
We need to build this twice per test (because keypairs aren't `Clone`).
I find that putting boilerplate like this in a separate function makes
the tests more legible.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
I'm trying to reduce the cognitive load of the test a bit, because I
will soon extend it so it will grow even more complex.
|
| | | | | | | | | | |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
I find very long paths a bit hard to read..
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
The line the comment is referring to for no longer exists.
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
To ensure it's actually `Ok(())` like we expect.
|
| | | | | | | | | | |
|
| | | | | | | | | | |
|