| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
| |
I don't know if these are needed because the rules are not documented
afaict. But it seems like probably they ought to be there?
|
| |
|
|
| |
These fns are in a feature-gated impls on feature-gated structs.
|
| |\
| |
| |
| |
| | |
clippy: Allow some of our existing code patterns
See merge request tpo/core/arti!1396
|
| | | |
|
| |\ \
| |/
|/|
| |
| | |
Overhaul send_control_message
See merge request tpo/core/arti!1367
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
Now, after you call start_conversation_last_hop, you can send more
messages if you like.
|
| | |
| |
| |
| |
| | |
We're going to want to do almost-the-same thing but without installing
a new handler.
|
| | |
| |
| |
| |
| | |
This is just a placeholder for now, but it'll be a thing you can send
more messages with.
|
| | |
| |
| |
| | |
Was send_control_message.
|
| | |
| |
| |
| |
| | |
We're going to let people start a conversation and either expect to
receive first, or send messages ad-hoc later.
|
| |/
|
|
| |
These are no longer needed.
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
We haven't generated these since Tor 0.3.5, which is no longer
supported on the network.
Closes #914.
|
| |\
| |
| |
| |
| |
| |
| | |
Better API for getting circuit paths
Closes #787
See merge request tpo/core/arti!1286
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
The new path_ref() method returns an Arc<Path>, which gives a much
better API for reasons discussed in the new documentation of path().
(We could just replace path() if we'd prefer, but IMO having
path_ref() here isn't so bad.)
|
| | |
| |
| |
| |
| |
| | |
The new PathEntry struct wraps the old PathEntry enum, which has
been renamed to HopDetail. It's an opaque struct because we want to
be able to put new information in the enum as we think best.
|
| | |
| |
| |
| | |
(You can't get one yet or do much with it.)
|
| | |
| |
| |
| |
| | |
Now Path is a regular struct with no interior mutability, and we use
Arc::make_mut() for the case when we need to add a hop.
|
| | |
| |
| |
| | |
(We're about to remove the interior mutability from Path.)
|
| |/
|
|
|
| |
These are all related to issues that will come up for the service
side of the onion service implementation.
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
When we break the 1:1 relationship of message and cell, we'll want
this API to take messages, not cells.
This API is experimental, so we don't need to call it a semver
break.
Closes #881.
|
| |
|
|
|
|
|
|
| |
Formerly we said that it would not return until the handler
was uninstalled. This is incorrect: it returns as soon as the
message is sent and the handler installed.
Closes #885.
|
| |
|
|
|
| |
Fixes
nailing-cargo +stable clippy -p tor-hsclient --all-features --all-targets
|
| | |
|
| |
|
|
|
|
| |
I am hoping we can merge this as a "TODO (Diziet)", even though I
think it may be controversial. Ie merging this doesn't represent a
decision to do as I suggest.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Also, no longer talk about handlers being "installed". That's not
something that's exposed by this API.
And, say that `send_control_message` can be called again only
after *`send_control_message`* returns, not when `handle_msg` has
returned `UinstallHandler`. IMO this makes more sense.
Explain that we can't maintain a continuous watch while holding a
conversation with the peer. (This is surely an API bug.)
|
| |
|
|
|
| |
This fixes a warning when building tor-proto without the
`rpc-common` feature.
|
| |
|
|
| |
Based on text from @diziet
|
| |
|
|
|
| |
Sadly, this adds a few more `TODO HS` entries, but I think we can
clean them up later after a bit of discussion.
|
| |
|
|
|
|
|
| |
There are a few new TODO hs comments, though, and an XXXX I'll need
to fix up in the next commit.
Implements #726.
|
| |
|
|
|
| |
This is fairly straightforward, thanks to our existing design work
on this code.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Now ClientCirc is no longer `Clone`, and the things that need it
to be `Clone` instead return and use an Arc<ClientCirc>
We're doing this so that ClientCirc can participate in the RPC
system, and so that its semantics are more obvious.
Closes #846.
Thanks to the type system, this was a much simpler refactoring than
I had feared it would be.
|
| |
|
|
|
|
|
|
| |
If we didn't do this, we would need to transfrom
`EncodedLinkSpec`s into a `LinkSpec::Unrecognized`, which is not
semantically right. What's more, every user of this API wants to
consume encoded link specifiers, so encoding them early saves a
little effort.
|
| |
|
|
|
|
|
| |
This is a workaround for an issue that I'm about to encounter
somewhere in our pile of dependencies as I add arti-rpcserver, and
somehow make serde_json visible in this test code thereby, making
the PartialEq method resolution ambiguous.
|
| |
|
|
| |
Closes #784.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
This way we don't need to worry about race conditions that happen if
the caller thinks that the handler is installed before it really is.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
This new function combines "sending a message" and "accepting
replies in a stream" into a single call, so that there is no gap
between when the message is sent and the replies are available.
There are a number of compromises here, in order to avoid API
proliferation. I've tried to contain them as best I can.
See comments for additional design discussion.
|
| | |
|
| | |
|
| |
|
|
| |
Fixes #756
|