| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | |
| | |
| | |
| | |
| | | |
Option::replace has been around since 1.31,
but the clippy warning is new.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2996#note_3199590
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The `ClientCirc` accessors will only return an error if the underlying
circuit is closed, so it doesn't make sense to map these errors to
`Bug`.
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2996#note_3199072
and
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2996#note_3199073
|
| | | |
| | |
| | |
| | |
| | | |
These `TunnelMutableState` impls just delegate to `MutableState`, so we
might as well link to the corresponding docs.
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | | |
Hiding the underlying type makes the code less readable.
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is messy, because `ClientCirc::{path_ref, n_hops, ..}` become
fallible (we can't unwrap the result, because when a circuit is closed,
its state gets removed from the `TunnelSharedState`, but its
`ClientCirc` handle continues to exist, so any attempt to retrieve the
state will result in an `Err`).
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We now have a new `TunnelSharedState` type for storing the shared state
of a tunnel. It consists of the `MutableState`s of all the circuits in
the tunnel, which are shared between it and `Circuit` (the circuit
subcomponent of the reactor). The `TunnelSharedState` itself is shared
between `ConfluxSet` (which manages the `Circuits`), and `ClientCirc`
(the reactor handle used to access information about circuits, such as
their `Path`).
|
| | | |
| | |
| | |
| | | |
This will simplify some callsites.
|
| | | |
| | |
| | |
| | |
| | | |
Not locking the `MutableState` mutex outside of this impl makes it
easier to see it's currently impossible deadlock.
|
| | | |
| | |
| | |
| | |
| | |
| | | |
This renaming is in preparation for the addition of a newtype wrapper
for what used to be `Mutex<MutableState>`. That newtype wrapper will be
called `MutableState`.
|
| | | | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
tor-proto: Remove deprecated ClientCirc functions.
See merge request tpo/core/arti!2995
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
These functions have been deprecated for a while, and are now
complicating the `MutableState` changes we need to do for #1840, so it
seems like a good time to remove them.
|
| | | | | |
|
| |/ / /
| | |
| | |
| | |
| | |
| | | |
This method has always been deprecated, so it's not a big deal to
remove. It can be replaced with the corresponding iterators's `Default`
implementation.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
tor-proto: change bench measurement
See merge request tpo/core/arti!2998
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | |/ / |
|
| |\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | | |
Update MSRV to 1.83; bump gitlab-ci recent-image to 1.86.
Closes #1869
See merge request tpo/core/arti!2999
|
| | | |
| | |
| | |
| | |
| | | |
Now that our MSRV is 1.83, clippy is happy to make more
recommendations for us.
|
| | | | |
|
| |/ /
| |
| |
| |
| |
| |
| | |
* arti: test: Restructure tests directory
* arti: dep: Add assert_cmd dev-dependency
* arti: test: Update README
* doc: Fix hsc documentation
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
These were generated with an updated version of the python reference
implementation.
|
| | |
| |
| |
| | |
See torspec#332.
|
| | |
| |
| |
| |
| | |
We need the macro to propagate only certain #[meta] values
to all places where a case is used.
|
| | |
| |
| |
| | |
Part of #1945.
|
| | |
| |
| |
| |
| | |
This type differs from `NamedSubver` in that the represented
subprotocol capability isn't necessarily recognized or valid.
|
| | |
| |
| |
| |
| | |
It is not remotely close to exhausting a u8,
and several of our protocols expect it to be expressible as one.
|
| | |
| |
| |
| |
| |
| | |
Implements proposal 358.
Closes #1946.
|
| | |
| |
| |
| | |
Implements part of proposal 358.
|
| | |
| |
| |
| | |
This required some renaming, so that the types and their codes matched.
|
| | |
| |
| |
| |
| |
| |
| | |
This type will, because of prop358, be shared by ntorv3,
hs-ntor, and probably other future handshakes.
There will also be a CircResponseExt type.
|
| | |
| |
| |
| | |
Previously it required the caller to import a whole bunch of stuff.
|
| | |
| |
| |
| | |
It is no longer hs only.
|
| | |
| |
| |
| | |
We're going to use it for ntorv3 extensions as well.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Now instead of using CryptState for everything, we have specific
types for each role and direction of crypto.
This turned up a harmless-so-far bug in our onion service code: as
an onion service, we were using _client_ crypto layers to respond to
a client request. That's not correct, and wouldn't have worked
with CGO. Instead, we need to use relay crypto layers, wrapped
as client layers.
Closes #1975.
|