| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This will make the code work when it's not an Arc any more.
Signed-off-by: Ian Jackson <[email protected]>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We are going to get rid of a lot of Arc, so we need the underlying
thing to be Clone.
Signed-off-by: Ian Jackson <[email protected]>
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
tor-circmgr: Remove a type annotation in a method call
See merge request tpo/core/arti!225
|
| | | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is a method, so the resolution is automatic. It's not clear to
me why this was written out this way, given that extend_ntor is right
above.
Signed-off-by: Ian Jackson <[email protected]>
|
| |\ \ \ \
| |/ / /
|/| / /
| |/ /
| | | |
De-Arc-ify Buildable for ClientCirc
See merge request tpo/core/arti!219
|
| |/ / |
|
| |\ \
| | |
| | |
| | |
| | | |
Remove a bunch of unused RNGs
See merge request tpo/core/arti!213
|
| | |\ \
| |/ /
|/| |
| | | |
# Conflicts:
# crates/tor-circmgr/src/build.rs
|
| |\ \ \
| |_|/
|/| |
| | |
| | | |
prefer 'unwrap_or_default' to manual constructor
See merge request tpo/core/arti!215
|
| | | | |
|
| | | | |
|
| |\ \ \ |
|
| | |/ / |
|
| |\ \ \ |
|
| | |/ / |
|
| |\ \ \ |
|
| | |/ / |
|
| |/ / |
|
| |/ |
|
| |\
| |
| |
| |
| | |
Exclude arti-bench from coverage.
See merge request tpo/core/arti!210
|
| | |
| |
| |
| |
| | |
This program is itself for testing; we don't strongly care how much
coverage it has on its own.
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Only count timeouts when we've seen net activity recently.
Closes #256
See merge request tpo/core/arti!207
|
| | |/
| |
| |
| |
| |
| |
| | |
This closes arti#256. It makes our behavior match Tor's more closely,
though it has a simpler implementation than Tor. I think that the extra
complexity in Tor's logic is because we used to record timeouts in
the histogram as well as in the success/failure log.
|
| |\ \
| |/
|/|
| |
| | |
Usability improvements to arti-bench.sh script
See merge request tpo/core/arti!209
|
| | |
| |
| |
| |
| | |
Previously, this case would cause arti-bench to hang forever, trying
to bootstrap against one network while another network was running.
|
| | |
| |
| |
| | |
(An empty $RUST_LOG no output, and confuse the nickm^Wuser.)
|
| |/
|
|
|
| |
shellcheck doesn't like `export FOO="$(bar)"` as one line, since it
has the possibility of missing errors.
|
| |\
| |
| |
| |
| | |
preemptive.rs: Use Instant::checked_add instead of raw subtraction
See merge request tpo/core/arti!206
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The implementations of `Add` / `Sub` (et al.) on `std::time::Instant`
can panic if the underlying OS structure can't represent the result
(like arti#266). Use Instant::checked_add and print a warning instead,
to prevent panicking.
Also, we now add instead of subtracting; I suspect it's reasonable that
you might not be able to go backward past the first `Instant` created on
some platforms, but going *forward* should probably work?
|
| | | |
|
| |\ \
| | |
| | |
| | |
| | | |
address clippy's latest lint
See merge request tpo/core/arti!205
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
These will require thought; should we ignore them, act on them, or
continue to treat them as internal errors?
|
| | | |
| | |
| | |
| | |
| | |
| | | |
IIUC, these anticipatd a need to store min_exit_circs_per_port in
CircMgr. But the current design, where it goes into preemptive.rs and
thence to usage, seems to work fine.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
We _do_ reject bad hostnames: just not where I once thought we might.
We need to decide if the current behavior is what we want (and I think
it is, probably?).
|
| | | |
| | |
| | |
| | | |
We're assuming that prop285 is accepted in some form.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
Our behavior in handling not-yet-valid router descriptors doesn't match
the C Tor implementation, but it's not a big deal:
we don't currently use router descriptors at all.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
If we fail to convert a curve25519 key to an ed25519 key for checking
the onion-key crosscert, don't call that an internal error: it means
that something is wrong with the provided ntor key.
|
| |/ /
| |
| |
| |
| | |
As of tor-spec commit 01122c5bd7d2f0f, the spec is no longer ambiguous
on this point.
|
| |\ \
| | |
| | |
| | |
| | | |
tor-proto: Allow one meta-cell handler at a time.
See merge request tpo/core/arti!204
|
| | | |
| | |
| | |
| | |
| | | |
Previously the code would let us try to install a meta-cell handler
before the old one was done, leading to possible confusion.
|
| |\ \ \
| |/ /
|/| /
| |/
| | |
Introduce an experimental benchmarking utility for Arti
See merge request tpo/core/arti!195
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The new `arti-bench` crate does a simple end-to-end benchmark test
embedding Arti: it generates some random data (of configurable amount,
depending on command-line parameters), and then sends said data back and
forth via Arti (which should be configured to use a local Chutney
network).
Additionally, the benchmark can also be run via a local SOCKS5 server
(in order to benchmark the performance via a local Chutney node, for
comparison).
The `tests/chutney/arti-bench.sh` sets up and tears down Chutney as
required to make this work.
This is very much a first cut; there are many things that should
eventually get added, such as support for multiple connections, JSON
output capabilities, running multiple tests, ...
|
| |\ \
| | |
| | |
| | |
| | | |
fallbackdir: Update list generated on December 15, 2021
See merge request tpo/core/arti!202
|
| | | |
| | |
| | |
| | | |
Signed-off-by: Tor CI Release <[email protected]>
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
tor-proto: use const-time eq on sendme tags.
See merge request tpo/core/arti!201
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
There's no known attack here, but it's best practice to always compare
digests using a constant-time comparison operator.
This resolves an XXXX comment.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
tor-proto: set HalfStream::connected_ok right.
See merge request tpo/core/arti!203
|
| |/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Previously we'd always set it to true, allowing one CONNECTED per
half-closed stream even if the stream had already received a
CONNECTED cell.
This resolves an XXXX.
|
| |/ / |
|