| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit uses `tor_error::Bug` for indicating thread poisoning.
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit renames `cb` to `endpoint_fn` everywhere, including internal
implementations.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit enables `PRAGMA foreign_keys=ON;` for every connection by
adding an appropriate statement to `schema::prepare_db`.
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit refactors a large part of the HTTP module, namely it
refactors the `Callback` type to a new type called `EndpointFn` which
now works in a transaction based approach and no longer gives access to
the `StoreCache`. The type itself is also no longer a trait but a
concrete type using `fn`.
Another very notable change that became necessary during this commit was
to make large parts of the codebase synchronous instead of async, namely
because it is non-trivial to `Send` a `Transaction` created inside an
async context to a synchronous function. Besides, this change has been
deemed necessary for other reasons to.
The refactoring to more synchronous code has lead to some interesting
changes in `StoreCache` too, namely that in no longer uses async mutex,
but a synchronous mutex instead.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit implements the initial draft for the HTTP module.
It is fairly complicated but well documented within the source code,
please refer to that instead.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit adds the `schema.rs` module, which implements the database
schema alongside some functions for initializing the database and
obtaining the database schema version.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit lays the initial groundwork for the `tor-dirserver` crate,
a crate that shall implement functionality for dirmirros and dirauths.
For now, the current crate consists of three bare bone modules:
* lib.rs
* err.rs
* mirror.rs
All of which contain mostly boilerplate code for now
|
| |\ \ \ \ \ \
| |/ / / / /
|/| | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
proto: Add extra validation for conflux SWITCH
Closes #2031
See merge request tpo/core/arti!3181
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This makes it clearer that the tunnel shutdown is triggered correctly
(i.e. that it is enough for *one* of the legs to receive the bad SWITCH
cell).
This also updates a comment that wrongly suggests that the tunnel is
only shut down if both legs get removed from the conflux set.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The test code now creates the params (which enables it to build test
cases that use various params).
Resolves a TODO.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
Also removes all the TODOs related to #2031 (which is now addressed).
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
Closes #2031
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
This partially addresses #2031
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This will be needed for the SWITCH seqno validation logic.
Part of #2031
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
These will be used for validating SWITCH cells.
Part of #2031
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
We no longer need to clone `CongestionWindowParams` now that it
implements `Copy`.
Resolves a clippy warning.
|
| |/ / / / /
| | | | |
| | | | |
| | | | |
| | | | | |
These will likely always just be a collection of integers (lightweight
to copy).
|
| |\ \ \ \ \
| |/ / / /
|/| | | |
| | | | |
| | | | | |
Circuit padding: note when cells are sent and received
See merge request tpo/core/arti!3222
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | | |
(This was so much easier than reporting on the send side.)
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
(This is what required us to stick a padding controller handle in each
CircEnt, and what required us to accompany each queued cell with a
QueuedPaddingCellInfo. Ouch!)
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This requires some annoying plumbing to make sure that the right
types wind up in the right places.
|
| | | | | |
| | | | |
| | | | |
| | | | | |
(I'm about to add more fields.)
|
| | | | | |
| | | | |
| | | | |
| | | | | |
Also, use it to report that we have queued normal data.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We'll need this so that we can tell the right padding machine(s)
which of them just had a queue flush.
This is not yet 100% done; the unfinished parts are marked with
XXXXs.
|
| |\ \ \ \ \
| |_|/ / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
tor-proto: Fix bug in `congestion_signals`
Closes #2128
See merge request tpo/core/arti!3223
|
| |/ / / / |
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
shadow tests: mitigate flakiness
See merge request tpo/core/arti!3227
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This partially reverts b223d504f6a033600c61e81a0b0a0eea3e43fd44 from
arti!3047. Increasing the transfer size exacerbates the failure rate of
the onion services too much.
We should increase it again once arti#2109 is resolved.
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Mitigates #2154
The determinism inside CI is of limited usefulness since a CI seed
generally won't perfectly replicate the behavior when debugging locally.
Arguably it's a feature that when there's some flakiness it does
replicate inside of CI, but it leads to some confusion about blame (e.g.
as in #2154 where an unrelated MR probably perturbed the PRNG to trigger
some pre-existing flakiness), and means that we can't just rerun the job
if we get really unlucky. i.e. even if we set a lower success threshold,
a sufficiently unlucky MR can still fail and keep failing as long as it
runs with the same seed.
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
doc/hsc.md: Mention that `--batch` suppresses the prompting.
See merge request tpo/core/arti!3215
|
| | | |_|/ /
| |/| | | |
|
| |\ \ \ \ \
| |_|/ / /
|/| | | |
| | | | |
| | | | | |
tor-dircommon: Initial commit
See merge request tpo/core/arti!3205
|