| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | |
|
| | | | |
|
| | | | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
Improve docs for ChannelUsage
See merge request tpo/core/arti!737
|
| | | |/
| |/|
| | |
| | |
| | |
| | |
| | | |
Try to clarify more that the ChannelUsage is for describing the
usage for one particular channel request, not for the channel as a
whole. This is a potentially confusing point, so we should spell it
out completely.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
CircMgr: Add an accessor for the CircuitBuilder.
See merge request tpo/core/arti!738
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
Without this, actually building circuits manually is a pain.
This API is behind the `experimental-api` feature, and so it does
not require a semver.md entry.
|
| |\ \ \
| |/ /
|/| |
| | |
| | | |
Add a new constant-time is_zero() check for RsaIdentity
See merge request tpo/core/arti!735
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
As a matter of good crypto practice, we shouldn't use
short-circuiting checks to compare keys or key-like objects, since
the amount of time taken by those checks can leak information about
their inputs.
I don't think it's actually _necessary_ to use a constant-time
operation in this case, but let's establish the precedent.
This is a follow-up to !724.
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There are some places in the protocol where we have an all-zero RSA
identity that does not truly represent a key, but rather represents
an absent or unknown key. For these, it's better to use
`RsaIdentity::is_zero` instead of manually checking for a set of
zero bytes: it expresses the intent better, and ensures that the
operation is constant-time.
I am deliberately not introducing a more general IsZero trait here,
or implementing is_zero for anything else: This is the only one we
seem to need right now. We can generalize it later if we have to.
|
| |\ \
| | |
| | |
| | |
| | | |
Implement onion service Introduce1
See merge request tpo/core/arti!724
|
| | | | |
|
| |\ \ \
| |_|/
|/| |
| | |
| | |
| | |
| | | |
enumerate platform with getresuid support
Closes #582
See merge request tpo/core/arti!728
|
| |/ / |
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
force no inlining on internal_macro_test
Closes #570
See merge request tpo/core/arti!727
|
| |/ /
| |
| |
| | |
it may fix this test when running in release, where the function gets inlined, so its name does not appear in the backtrace
|
| |\ \
| | |
| | |
| | |
| | | |
Add a dbg!() to diagnose #570.
See merge request tpo/core/arti!726
|
| |/ /
| |
| |
| |
| | |
This won't fix anything, but it will let us see what the backtrace
looks like when it fails.
|
| |\ \
| | |
| | |
| | |
| | | |
fix compilation error with async-std
See merge request tpo/core/arti!723
|
| | | | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
`TaskSchedule`: give error on `sleep*()` if last handle is dropped
Closes #572
See merge request tpo/core/arti!725
|
| |/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes an busy-loop.
When the last `TaskHandle` on a `TaskSchedule` is dropped, the
schedule is permanently canceled: whatever operation it was
scheduling should no longer be performed. But our code was broken:
the `sleep()` and `sleep_until_wallclock()` functions don't verify
whether the handles are dropped or not.
This breakage caused an CPU-eating busy-loop in
`sleep_until_wallclock`.
With this patch, we now return a `Result<(), SleepError>` from these
functions.
Fixes #572.
|
| | | | |
|
| | |/
|/| |
|
| |\ \
| |/
|/|
| |
| | |
CI: build-repro: Bump image to 1.63, and other improvements
See merge request tpo/core/arti!716
|
| | | |
|
| | |
| |
| |
| | |
We don't want any updates!
|
| | |
| |
| |
| | |
This makes it easier to test, and perform other kinds of stunts.
|
| | | |
|
| | | |
|
| |/
|
|
|
|
|
|
|
| |
tinystr 0.6.2 (which our Cargo.toml's permit and our Cargo.lock
specifies) has an MSRV of 1.60.
The symptom with earlier Rust is this from cargo:
error: failed to select a version for the requirement `tinystr = "^0.6.0"`
(which is, on the face of it, nonsense).
|
| |\
| |
| |
| |
| | |
document TOR_SKIP_CONTROLPORTTEST=1 for no warning on Tor Browser
See merge request tpo/core/arti!719
|
| |/ |
|
| |\
| |
| |
| |
| | |
READMEs: Remove many caveats and general tidying
See merge request tpo/core/arti!717
|
| | |
| |
| |
| |
| | |
The referenced ticket is closed and I think the top-level caveats
remaining after !717 are sufficient.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/717#note_2834307
|
| | | |
|
| | | |
|
| |/ |
|
| |\
| |
| |
| |
| |
| |
| | |
update to notify v5.0.0
Closes #454
See merge request tpo/core/arti!679
|
| | | |
|
| | | |
|
| |\ \
| | |
| | |
| | |
| | | |
Changelog fixes
See merge request tpo/core/arti!715
|