summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | tor-proto: Split out send_relay_cell().Gabriela Moldovan2025-01-282-13/+28
| | | |
| * | | tor-proto: Group imports.Gabriela Moldovan2025-01-281-2/+1
| | | |
| * | | tor-proto: Replace fully-qualified paths with use.Gabriela Moldovan2025-01-281-6/+6
| | | | | | | | | | | | | | | | For readability.
| * | | tor-proto: Derive Default for MutableState.Gabriela Moldovan2025-01-282-4/+2
|/ / / | | | | | | | | | | | | This enables us to get rid of two lines from the circuit reactor constructor.
* | | Merge branch 'strongrefs_are_not_deduped' into 'main'Nick Mathewson2025-01-283-8/+10
|\ \ \ | | | | | | | | | | | | | | | | rpc: Clean up comments surrounding strong references See merge request tpo/core/arti!2741
| * | | rpc: Clean up comments surrounding strong referencesNick Mathewson2025-01-273-8/+10
| |/ / | | | | | | | | | They used to be deduplicated, but they haven't been for a while.
* | | Merge branch 'todos-in-rpcbase-1' into 'main'Nick Mathewson2025-01-275-104/+110
|\ \ \ | |/ / |/| | | | | | | | Fix some TODOs in tor-rpcbase See merge request tpo/core/arti!2740
| * | rpcbase: Enforce validity on error datum keywords.Nick Mathewson2025-01-272-4/+12
| | |
| * | rpcbase: Make recognized namespace list optional.Nick Mathewson2025-01-272-8/+11
| | |
| * | rpcbase: Move is_valid_rpc_identifier to crate root.Nick Mathewson2025-01-272-91/+89
| | |
| * | rpc: Rename InvalidMethodName to InvalidRpcIdentifier.Nick Mathewson2025-01-273-17/+19
| | | | | | | | | | | | We're about to use this error type for other things too.
| * | Remove RPC TODO about bypass_method_dispatch method.Nick Mathewson2025-01-271-6/+1
|/ / | | | | | | | | | | There was formally a redundant method of this name, which could get out-of-sync with invoke_without_dispatch. But now that method is gone, and this TODO is wrong.
* | Merge branch 'ahf/win-build-fix' into 'main'Nick Mathewson2025-01-261-2/+2
|\ \ | |/ |/| | | | | Fix not(unix) build error introduced in cb090c7b4c. See merge request tpo/core/arti!2738
| * Fix not(unix) build error introduced in cb090c7b4c.Alexander Hansen Færøy2025-01-261-2/+2
|/ | | | | | | This patch fixes a relatively harmless build error introduced for non-unix builds. Additional comma introduced in b5aa8f7a88.
* Merge branch 'rpc-docs-tool-fixes' into 'main'Nick Mathewson2025-01-231-28/+87
|\ | | | | | | | | | | | | Fixes and maintenance on rpc-docs-tool Closes #1708 See merge request tpo/core/arti!2736
| * rpc-docs-tool: Fix documentation for methods that apply to all objectsNick Mathewson2025-01-231-7/+30
| | | | | | | | | | | | | | This is not yet strictly automated yet, but since there is only one such method this is probably good enough for now. Closes #1708.
| * rpc-doc-tool: Fix dangling RustDoc linksNick Mathewson2025-01-231-11/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We already successfully handled links of the forms: * `[RustId]` * `[text](https://...)` * `[text][label]` But we didn't handle links of the form: * `[text](RustId)` These latter links aren't correct markdown on their own; but they're simple enough to fix up after a little hacking on the marko backend representation.
| * rpc-docs-tool: Emit methods and objects in sorted order.Nick Mathewson2025-01-231-4/+7
| |
| * rpc-docs-tool: Update version recommendationNick Mathewson2025-01-231-2/+2
| | | | | | | | (Current nightly works fine, so we can stop recommending a downgrade.)
| * rpc-docs-tool: Use new connect-point API to connect to arti.Nick Mathewson2025-01-231-4/+1
| | | | | | | | Fortunately, the new API has simplified matters greatly!
* | Merge branch 'rpc-missing-dir' into 'main'Nick Mathewson2025-01-232-10/+20
|\ \ | | | | | | | | | | | | rpc: Tolerate NotFound on configured connect point directory. See merge request tpo/core/arti!2735
| * | connpts: Document behavior on nonexistent directoryNick Mathewson2025-01-232-2/+6
| | |
| * | rpc: Tolerate NotFound on configured connect point directory.Nick Mathewson2025-01-231-8/+14
| |/ | | | | | | | | | | | | | | If Arti tries to bind to a directory of connect points, and that directory isn't there, the right behavior is to treat the directory as if it were empty. Otherwise, the user would have to create the default connect point directory (as empty) before Arti would start.
* | Merge branch 'avoid_execute_internal_ok' into 'main'Nick Mathewson2025-01-234-31/+69
|\ \ | | | | | | | | | | | | rpclib: Avoid overuse of execute_internal_ok. See merge request tpo/core/arti!2730
| * | rpclib: More explanations about internal method usage.Nick Mathewson2025-01-231-3/+5
| | |
| * | arti-rpc-client-core: Rename Authentication{Rejected=>Failed}Nick Mathewson2025-01-233-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | Also change corresponding message. This way, it will be clear that we're just reporting that Arti gave us an error—not that the error necessarily means that the authentication itself was "wrong".
| * | rpclib: Avoid overuse of execute_internal_ok.Nick Mathewson2025-01-234-24/+60
| |/ | | | | | | | | | | | | | | | | | | | | The execute_internal_ok method converts every error response into an internal error; as such, it's only appropriate when there is no way for a well-behaved Arti instance to give an error response. But we had been using it in a few places where errors were possible under other circumstances. This commit fixes that behavior, and adds documentation to help avoid it.
* | Merge branch 'rpc-todos-1' into 'main'Nick Mathewson2025-01-232-20/+3
|\ \ | | | | | | | | | | | | rpc: Resolve a couple of dead code TODOs See merge request tpo/core/arti!2731
| * | rpcserver: remove dead code exception in objmap.rsNick Mathewson2025-01-221-3/+1
| | |
| * | rpcserver: remove dead code in codecs.rsNick Mathewson2025-01-221-17/+2
| | |
* | | Merge branch 'rpc-todos-2' into 'main'Nick Mathewson2025-01-236-44/+47
|\ \ \ | |_|/ |/| | | | | | | | Fix several 'TODO RPC' notes in the arti crate. See merge request tpo/core/arti!2737
| * | arti: Make Rpc argument unconditional when constructing socks proxyNick Mathewson2025-01-236-33/+43
| | | | | | | | | | | | | | | | | | Formerly this was a conditional method argument, which is a huge antipattern. Now it is unconditionally present, as `Option<T>` for a type that is uninhabited when RPC isn't supported.
| * | arti::socks: Re-wrap a section.Nick Mathewson2025-01-231-2/+3
| | | | | | | | | | | | | | | rust-analyzer keeps re-wrapping this piece for me, even though rustfmt doesn't complain.
| * | arti: remove an obsolete rpc todo.Nick Mathewson2025-01-231-1/+0
| | | | | | | | | | | | Information _is_ passed to the RpcMgr, via the argument to new_connection.
| * | arti: remove an obsolete rpc todo.Nick Mathewson2025-01-231-1/+0
| | | | | | | | | | | | | | | The RpcMgr does indirectly hold a reference to the client, via its make_session argument.
| * | arti: remove an obsolete rpc todo.Nick Mathewson2025-01-231-1/+0
| | | | | | | | | | | | We _do_ have error detection from this function, and have for ages.
| * | arti: Remove old workaround for runtime selection under RPC.Nick Mathewson2025-01-231-6/+1
|/ / | | | | | | | | This was necessary before we had support for implementing RPC methods on generic types.
* | Merge branch 'dev/cve/mistrust-doc' into 'main'Nick Mathewson2025-01-231-0/+12
|\ \ | | | | | | | | | | | | tor-config: Improve mistrust documentation See merge request tpo/core/arti!2727
| * | tor-config: Improve mistrust documentationClara Engler2025-01-231-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | This commit improves the documentation for `ConfigurationSources::set_mistrust`, by explaining that this option is unrelated to the paths defined within the configuration file itself, referring to the `storage.permissions.dangerously_trust_everyone` option.
* | | Merge branch 'fix-rpc-client-core' into 'main'Nick Mathewson2025-01-231-2/+2
|\ \ \ | | | | | | | | | | | | | | | | arti-rpc-client-core: Use EmptyReply instead of EmptyResponse. See merge request tpo/core/arti!2732
| * | | arti-rpc-client-core: Use EmptyReply instead of EmptyResponse.Gabriela Moldovan2025-01-231-2/+2
|/ / / | | | | | | | | | | | | | | | It looks like !2729 and !2722 raced with each other, because we're still using the old name for `EmptyReply` (and so `arti-rpc-client-core` doesn't currently compile on `main`).
* | | Merge branch 'rpc-cancel-2' into 'main'Nick Mathewson2025-01-2316-51/+503
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | rpc: Implement request cancellation Closes #818 See merge request tpo/core/arti!2722
| * | Document more that cancel is uncancellable.Nick Mathewson2025-01-222-0/+7
| | |
| * | rpc: Correct RPC error code for "RequestNotFound".Nick Mathewson2025-01-222-2/+5
| | |
| * | rpc-meta-draft: Make rpc:cancel more permissive on ID collision.Nick Mathewson2025-01-221-1/+2
| | |
| * | cancel: Distinguish the internal-error case for double-cancel.Nick Mathewson2025-01-221-2/+23
| | |
| * | cancel: Document deadlock/panic issue and how to avoid it.Nick Mathewson2025-01-221-2/+19
| | |
| * | rpc: Make cancel requests uncancellable.Nick Mathewson2025-01-224-28/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | The current cancel code is prone to deadlock, so the easiest way to solve it appears to be making cancel requests themselves uncancellable. I've included a test to verify the behavior; previously, this test caused a deadlock.
| * | cancel: Add a TODO about moving the Future inside the lock.Nick Mathewson2025-01-221-0/+5
| | |
| * | Cancel: Drop lock before calling waker.Nick Mathewson2025-01-221-0/+1
| | |