| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This will be used by relays too, once we modify it to make the `HopNum`
optional.
|
| | | | | | |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Unlike the client reactor, the relay reactor uses these components in
separate tasks. Splitting `CircHop` this way enables us to reuse its
parts instead of duplicating them in the relay impl.
Eventually, I'd like us to rewrite the client reactor to follow a
similar pattern.
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| |/ / / / |
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
http_connect: Add AsyncReadExt to fix compilation.
See merge request tpo/core/arti!3468
|
| |/ / / / |
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
arti: Warning when opentelemetry config is set but not build with feature
Closes #2247
See merge request tpo/core/arti!3458
|
| | | | | |
| | | | |
| | | | |
| | | | | |
It seems this config is for tokio-console and not the RPC.
|
| | | | | | |
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Validate Host header for non-CONNECT requests to HTTP CONNECT port
See merge request tpo/core/arti!3429
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This validation makes it harder for an adversarial webpage to probe
for the version of arti and its capabilities.
See torspec!437.
|
| |\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
x509: Support generating the keys and certs that relays need for TLS
Closes #2205
See merge request tpo/core/arti!3349
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Although we never need to actually check the signature on the other
party's x509 certificate, A relay does need a certificate and a
private key in order to be a proper TLS server.
In this function, I've added support for making an ersatz P-256
certificate certifying a P-256 key. See the code for info about the
rationale here. (Tor supports this, since it doesn't look at the
key at all: only the TLS layer cares about that.)
native_tls and rustls expect to get their keys and certs in
different forms, so this code provides them.
(Note that we don't expect to use native_tls with relays in the
first place, but it might be useful for lower-level interop
testing.)
Closes #2205.
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This doesn't give precisely the same results as before for leap
years, but that should be okay.
|
| |\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
retry-error: Stop trying to dedup error messages
See merge request tpo/core/arti!3465
|
| | | | | | | | | |
|
| | | |_|/ / / /
| |/| | | | | |
|
| |\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Implement a usage-based timeout for strongly isolated circuits (prop368)
Closes #2237
See merge request tpo/core/arti!3430
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
(The only error possible is an internal error from
calling it with a non-long-lived tunnel.)
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
This code uses the algorithm of prop368: When a tunnel is
sufficiently isolated, we want to expire it after it has been
disused for a certain amount of time.
The implementation is a little tricky, since we need to call an
async function on ClientTunnel to look up the disused_since() check.
We don't want to call async functions while holding locks, so
we need to drop the TunnelList lock before we do the disused_since()
calls, and the grab it again.
As part of this change, I've had made expiration functions return
the earliest time at which any tunnel might expire. We can use
this in the future to spawn fewer expiration tasks, and scan the
list of tunnels less often.
|
| | | | | | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Instead of a series of cutoffs, take an object with a set of
lifetimes.
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
We'll need them to be async so they can call disused_since() on tunnels.
|
| | | | | | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Part of prop368.
|
| | | |/ / / / /
| |/| | | | |
| | | | | | |
| | | | | | | |
This is part of an implementation for proposal 368.
|
| |\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
arti: Remove security disclaimer from onion service support
See merge request tpo/core/arti!3464
|
| | | |/ / / / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
These appear to be old comments. Now that these features are stable, we
consider them safe to use.
|