aboutsummaryrefslogtreecommitdiff
path: root/crates/arti/src/rpc/session.rs
Commit message (Collapse)AuthorAgeFilesLines
* arti: Give an Arc<CfgMgr> to RPC superuser sessions.Nick Mathewson7 days1-1/+3
|
* maint: Run maint/add_warning to deny string slicesClara Engler2026-06-091-0/+1
| | | | | | | | | | | | This commit executes maint/add_warning with the just added change to deny string slices except in tests. I recommend auditing this by checking out the previous commit followed by running the script yourself and then verifying that the diff is identical to this commit. This commit makes cargo clippy fail. We will add exceptions in the next commit.
* arti: rpc functionality to bootstrap a defer_bootstrapped client.Nick Mathewson2026-06-081-1/+6
|
* Make TorClient no longer implement Clone.Nick Mathewson2026-05-131-1/+1
|
* Make all TorClient constructors wrap the TorClient in an Arc.Nick Mathewson2026-05-131-1/+1
| | | | | | This is part of rationalizing the structure of TorClient so we can refactor startup logic, and so that RPC code can reason about object identity. See #2469.
* rpc: Add support for set_dormant.Nick Mathewson2026-03-161-1/+1
| | | | | This is not exactly the most _urgent_ superuser functionality, but it is probably the easiest to implement.
* rpc: Implement superuser mode.Nick Mathewson2026-03-161-3/+10
| | | | | When connection point provides superuser support, provide a (currently inert) RpcSuperuser object to the RPC session.
* arti: Extract responsibility for port listing.Nick Mathewson2026-02-191-21/+14
| | | | | Instead of doing this when we construct the listeners, we can do it in a separate method, to simplify the return type.
* Fix name of clippy lint to unchecked_time_subtraction (2)Ian Jackson2025-11-061-1/+1
| | | | Run maint/add_warning
* all: replace all uses of `futures::task::SpawnExt` with `tor_rtcompat::SpawnExt`Steven Engler2025-11-041-1/+1
|
* http_connect: Advertise listener capabilities to RPCNick Mathewson2025-10-281-4/+16
|
* arti: Make Rpc argument unconditional when constructing socks proxyNick Mathewson2025-01-231-1/+0
| | | | | | 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.
* rpc: clarify documentation and fix typosNick Mathewson2024-10-021-1/+3
| | | | Based on review from @opara.
* Revise RPC documentation to be more informative.Nick Mathewson2024-10-021-2/+9
| | | | | | Previous documentation was more-or-less meant for the Arti developer only. This new documentation is intended for actual users of RPC functionality. It's meant to be extracted with `maint/rpc-doc-tool`.
* rpc: add mandatory delegate-type attribute to Object templateNick Mathewson2024-09-241-1/+4
| | | | | | | When specifying a delegation, the template user must also say what type they're delegating to. We're going to use this to document and expose delegations.
* arti/rpclib: Tweak proxy_info format.Nick Mathewson2024-09-091-1/+3
| | | | | | | Renamed address to tcp_address, and made it optional, so that later we can have a unix_path, etc. On deser side, add support for unrecognized listener types.
* rpc: Use MockRuntime for set_proxy_info test.Nick Mathewson2024-08-281-2/+2
|
* rpc: Add a test for setting proxy info.Nick Mathewson2024-08-281-0/+40
|
* rpc: Try another incantation for watching for ProxyInfo.Nick Mathewson2024-08-281-13/+7
|
* rpc: Add another layer of indirection on proxyinfoNick Mathewson2024-08-281-1/+3
|
* rpc: Try using postage::watch to initialize ProxyInfo.Nick Mathewson2024-08-281-16/+63
| | | | | (This is a bit trickier than I would like, but it ensures that we never return a "not initialized yet" code.)
* RPC: Add experimental method to list SOCKS proxies.Nick Mathewson2024-08-281-5/+32
| | | | | | | We'll need this for our rpc-library code to meaningfully open SOCKS connections. Closes #1523.
* arti: Define a new ArtiRpcSession type.Nick Mathewson2024-08-281-0/+69
This type exists in the `arti` crate. It wraps and delegates to `arti_rpcserver::RpcSession`. Subsequent commits will use it to expose information from the `arti` crate to the RPC system; right now it does nothing.