| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We foolishly made *two* CircuitAccounts, one of which gets immediately
dropped. But we need to hold onto the account somewhere, because an
mq_queue doesn't keep the account alive.
Otherwise everything breaks when mq tracking is enabled.
|
| | | | | |
|
| | | | | |
|
| |\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
general::SocketAddr: Say "inet" rather than "tcp"
Closes #1701
See merge request tpo/core/arti!2554
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
"inet" makes more sense, since in principle these can also be used
for udp, etc.
Also making a corresponding change in rpc-connect-sketch.md,
which uses this format.
Closes #1701.
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Remove an obsolete TODO
See merge request tpo/core/arti!2562
|
| | | |/ / /
| |/| | |
| | | | |
| | | | | |
This *is* in tor-async-utils :-).
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Tests and Improvements to python rpc client API
See merge request tpo/core/arti!2567
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | | |
Make the return type from connect() more sensible.
|
| | | | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This tweaks the APIs to return a dict in cases where we know
that we are getting a result, and to return an ArtiRpcResponse
in cases where we don't know what kind of response we're getting.
It also expands our Error objects to support decoding.
Rationale: everybody who is using this libaray will want to
decode the json objects that they receive. By doing it in the
library, we can save them some annoyance.
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Previously, they only took strings, which sometimes required the caller
to use json.
|
| |/ / / / / |
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
rpc-draft: Clarify and weaken cancel guarantees
See merge request tpo/core/arti!2564
|
| | | |_|/ /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | | |
Part of #818.
Tries to match the set of guarantees specified by @diziet on that ticket.
|
| |\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Move crates to crates to slotmap-careful
Closes #1531
See merge request tpo/core/arti!2530
|
| | | | | | | |
|
| |\ \ \ \ \ \
| |_|_|_|_|/
|/| | | | |
| | | | | |
| | | | | | |
tor-proto: Reinstate circuit hop check in test_create()
See merge request tpo/core/arti!2546
|
| | |/ / / / |
|
| |\ \ \ \ \
| |_|/ / /
|/| | | |
| | | | |
| | | | | |
Fix typo in arti-rpcserver auth.rs comment
See merge request tpo/core/arti!2558
|
| | | |/ /
| |/| | |
|
| |\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | | |
Cleanups and improvements in the RpcError code
Closes #1662
See merge request tpo/core/arti!2556
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Our spec says that when the RPC client has said "I require you to have
feature X" and we don't have it, we need to include the feature(s)
we don't have in an `rpc:unsupported_features` field of our error.
Also, add an integration test for this behavior.
Closes #1662
|
| | | | |
| | | |
| | | |
| | | | |
(Found while writing a test.)
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
In older versions of the rpc spec, this field held a serialized
version of the Arti error object. That's no longer the design: now
it provides a way for specific errors to include extra, specified,
machine-readable data. For more information see the section
"Errors" in rpc-meta-draft.md
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
These are not regular ErrorKinds, since they can never occur in an
error that's meant to be returned from a Rust API like
`arti-client`. Instead, they only exist for errors returned from
RpcError.
(I can't find the place where we discussed this previously, but the
rationale is that if an ErrorKind never makes sense in response to
something that the user does from Rust, we should never have that be
an ErrorKind. The fact that the removed kinds do not actually
appear outside the RPC system suggests that this is reasonable.)
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I'm about to remove HasKind from InvokeError, which would otherwise
break this code.
These errors are all in fact internal errors, since in this context
they can only stem from incorrectly formed calls to
`invoke_special_method`.
|
| | | | |
| | | |
| | | |
| | | | |
In some cases, the tor_error::ErrorKind names were nicer.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We'll use this to make RpcErrors directly, without having to go
through an error that implements HasKind.
Later, we'll add the ability to set the `data` fields on an RpcError.
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
This change will let us start removing the not-entirely-logical
`Rpc.*` variants from tor_error::ErrorKind.
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | | |
This is about to be a public competitor with tor_error::ErrorKind.
|
| | | | | |
|
| |/ / / |
|
| |\ \ \
| |_|/
|/| |
| | |
| | | |
memquota: suppress clippy::single_match warning.
See merge request tpo/core/arti!2555
|
| |/ /
| |
| |
| |
| | |
"Suppress" rather than "fix": this pattern is intentional, and
makes it clear that we're doing an exhaustive match.
|
| |\ \
| | |
| | |
| | |
| | | |
tor-key-forge: Minor cleanups and reformatting
See merge request tpo/core/arti!2552
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | | |
`KeypairData` is already in scope, so there's no need to fully-qualify
it.
|
| | | | |
|