| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
rustdoc insisted on misindenting this before, and now it insists on
un-mis-indenting it.
|
| | | |
| | |
| | |
| | |
| | | |
Remove this todo as per
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1246#note_2912104
|
| | | |
| | |
| | |
| | | |
IntroduceAckStatus
|
| | | | |
|
| | | | |
|
| |/ / |
|
| |\ \
| | |
| | |
| | |
| | | |
Resolve most TODO HS comments in tor-cell
See merge request tpo/core/arti!1245
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
This module didn't have anything in it; nonetheless, removing it
does count as an API break since it was public.
|
| | | |
| | |
| | |
| | |
| | | |
Yes, we still will need more accessors for onion services, but we
can add them as we find the need.
|
| | | | |
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
hscrypto: Resolve all but one TODO HS comment.
See merge request tpo/core/arti!1244
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* Return a more informative error type (instead of Option)
* Check that time periods are an integer number of seconds
* Decide not to change the semantics of an argument.
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
We updated and clarified the spec in arti!107, and noted the
remaining infelicities in proposal 342.
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
(I'm not removing it entirely since maybe we _should_ use it, and
maybe we _will_ as we do services. I've added a TODO HS for
removing it or using it, and removed the TODO HS at the head of
pk.rs about making sure that all the key types in the module really
belong there.)
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I think it isn't actually a great idea for HsIdParseError to
implement ErrorKind, since the actual ErrorKind would depend
entirely on where the problematic ID came from.
|
| | | | | |
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
CI: integration-chutney: Turn into a warning
See merge request tpo/core/arti!1243
|
| | | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This test is known to fail "when the load is high". Recently I had to
press the "merge unverified changes" button to merge !1238, after four
consecutivew spurious failures.
IMO this is intolerable.
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
proto: Make sure that auth tags are truncated to 20 bytes
See merge request tpo/core/arti!1242
|
| | | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Onion service hops (pointlessly) use SHA3-256 for their
authentication, but they truncate it to 20 bytes (assuming I'm
reading the C right.)
See torspec#204 for clarification here.
|
| |\ \ \ \
| |_|/ /
|/| | |
| | | |
| | | | |
tor-hsclient: Finish(?) plumbing up first cut of HS client connection
See merge request tpo/core/arti!1240
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
Since !1238 we do pass the handshake_state along.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The type is a bit odd but this is a result of the underlying protocol.
I don't feel like inventing `IntroduceAckSuccess` that contains only
the extensions.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
If something *other* than a timeout went wrong, then that is less
expected so more interesting.
|
| |\| | |
| |/ /
|/| |
| | |
| | | |
tor-hsclient: Plumb some needed values through etc.
See merge request tpo/core/arti!1238
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
Pass Introduced to complete_handshake. The lack of this was a slip.
Add handshake_state to Introduced, and use it.
|
| | | |
| | |
| | |
| | | |
Requested in !1228 but overlooked
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
This gets rid of a lot of repeated `oneshot::<...<Result, ...>>` and
a bit of repeated functional code, etc.
|
| | | | |
|
| | | | |
|
| |\ \ \
| |/ /
|/| |
| | |
| | | |
RPC: Suppress a warning to do with RPC and SOCKS
See merge request tpo/core/arti!1237
|
| |/ /
| |
| |
| | |
Fixes `cargo check`
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | | |
proto: Convert MsgHandler API to expect a message, not a cell.
Closes #887
See merge request tpo/core/arti!1236
|
| | | |
| | |
| | |
| | | |
Closes #887.
|
| |\ \ \
| | | |
| | | |
| | | |
| | | | |
RPC: Functionality to downcast dyn Object to a dyn Trait.
See merge request tpo/core/arti!1225
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is a rather tricky piece of functionality. It works as
follows.
We introduce a `CastTable` type. Each `CastTable` tells us how to
downcast `dyn Object` for objects of a single concrete type.
The `Object` type now has a `get_casttable` method that returns
an empty `CastTable` by default.
`CastTable` is, internally, a map from the `TypeId` of the target
dyn Trait reference type to a function
`fn(&dyn Object) -> &dyn Trait`. These functions are stored as
`Box<dyn Any + ...>`. (They are Boxed because they may refer to
generic functions, which you can't get a static reference to,
and they're Any because the functions have different types.)
The `decl_object!` macro now implements `get_casttable` as
appropriate. (The syntax is a bit janky, but that's what we get
for not using derive_adhoc.) For non-generic types, `get_casttable`
uses a Lazy<CastTable>`. to initialize a CastTable exactly once.
For generic types, it use a `Lazy<RwLock<HashMap<..>>` to
build one CastTable per instantiation of the generic type.
This could probably be optimized a bit more, the yaks could be
shaved in a more scintillating hairstyle, and the syntax for
generic `decl_object` could definitely be improved.
|
| | | | | |
|
| |\ \ \ \
| |_|/ /
|/| | |
| | | |
| | | | |
tor-error: Document another potential cause for OnionServiceDescriptorValidationFailed.
See merge request tpo/core/arti!1215
|