summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | arti-client: Add one-hop circuit examplejuga2024-05-153-0/+69
|/ / / / | | | | | | | | | | | | Co-authored-by: gabi-250 <[email protected]>
* | | | Merge branch 'vanguards-extend-stub' into 'main'gabi-2502024-05-142-22/+98
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-circmgr: If necessary, extend the circuit to become STUB+. Closes #1400 and #1409 See merge request tpo/core/arti!2145
| * | | | tor-circmgr: Reword a somewhat inaccurate comment about vanguards.Nick Mathewson2024-05-141-1/+1
| | | | |
| * | | | tor-circmgr: Fix path not being extended if lite vanguards are enabled.Gabriela Moldovan2024-05-141-1/+10
| | | | |
| * | | | tor-circmgr: Assign error-handling closure to variable.Gabriela Moldovan2024-05-141-7/+10
| | | | | | | | | | | | | | | | | | | | We will soon need to reuse this.
| * | | | tor-circmgr: Rename neighbor_exclusion variables for clarity.Gabriela Moldovan2024-05-141-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I am about to reuse one of these on the "lite" vanguards branch. I am renaming them to make it easier to see which one of the two I will be using.
| * | | | tor-circmgr: After building the HS path, assert the length is correct.Gabriela Moldovan2024-05-141-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of these assertions currently fails, because we have a bug in the vanguard path builder: if lite vanguards are enabled, we only build 2-hop circuits instead of 3.
| * | | | tor-circmgr: If necessary, extend the circuit to become STUB+.Gabriela Moldovan2024-05-131-8/+42
| | | | | | | | | | | | | | | | | | | | Closes #1400
| * | | | tor-circmgr: Add a helper for extending HsCircStubs by one hop.Gabriela Moldovan2024-05-131-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're about to use this in `maybe_extend_stub_circuit` too. Part of #1400
* | | | | Merge branch 'allow_unused_store_method' into 'main'Alexander Færøy2024-05-141-2/+5
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | DirMgr: Clarify dead_code status on storage methods. See merge request tpo/core/arti!2151
| * | | | DirMgr: Clarify dead_code status on storage methods.Nick Mathewson2024-05-141-2/+5
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Per comments on #1383, we're keeping these methods. This commit replaces the "TODO" comments with comments explaining why it's okay that this methods are unused. Part of #1383.
* | | | Merge branch 'rpc_stream_integration_v3' into 'main'Nick Mathewson2024-05-1412-75/+527
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | RPC: Allow SOCKS applications to create streams. See merge request tpo/core/arti!2143
| * | | | RPC: Use a slightly less awful workaround in socks.rsNick Mathewson2024-05-141-20/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem was that Rust won't let us say ``` type ConnTarget<R> = Arc<dyn ClientConnectionTarget>; ``` because the R parameter wasn't used. Previously we solved this by using a macro instead of a type definition, which is ugly. I had been thinking previously I would need to declare some kind of additional wrapper type, and had shrunk from the verbosity. But @diziet pointed out that I could just use a 2-tuple unconditionally. It's still not beautiful, but it is less hideous than before.
| * | | | RPC: Add notes about ClientConnectionTargetNick Mathewson2024-05-141-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | Document its relation to the method system, and possible future evolution.
| * | | | RPC: Require DynClone for ClientConnectionError.Nick Mathewson2024-05-144-5/+9
| | | | |
| * | | | RPC: Seal ClientConnectionError.Nick Mathewson2024-05-141-2/+19
| | | | |
| * | | | RPC: Document RpcDataSTream state transitions.Nick Mathewson2024-05-141-1/+19
| | | | |
| * | | | RPC: Rename RpcDataStream::{Waiting => Launching}Nick Mathewson2024-05-141-5/+9
| | | | | | | | | | | | | | | | | | | | Also, improve documentation.
| * | | | proto: Fix compilation with stream-ctrl but not experimental-api.Nick Mathewson2024-05-142-2/+2
| | | | |
| * | | | Remove excess indentation from last commit.Nick Mathewson2024-05-141-14/+11
| | | | | | | | | | | | | | | | | | | | (This is a separate commit to make the branch more readable)
| * | | | RPC: Refactor socks interpretation to remove stream id, add isolation.Nick Mathewson2024-05-141-41/+41
| | | | |
| * | | | RPC: RpcDataStream type to act as a "stream-shaped hole"Nick Mathewson2024-05-147-0/+243
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The application creates these, using a new-stream-handle RPC command, on an object that can actually create streams. Then later, the application provides the (global) identity of one of these objects when it's making a SOCKS connection. This causes the object to take hold of a `DataStreamCtrl`.
| * | | | RPC: Add a trait that can be the target of SOCKS requestsNick Mathewson2024-05-127-28/+176
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (These will later become objects that can receive any application request, once we have HTTP connect.) For now, Session and TorClient implement this trait; but soon there will be a new type to hold on to the created DataStreamCtrl. There are some XXXXs here, marking code that is too ugly to live. I should fix it before I merge this branch.
* | | | Merge branch 'list-crates' into 'main'Nick Mathewson2024-05-138-76/+56
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Replace maint/list_crates with list_crates_publish See merge request tpo/core/arti!2138
| * | | | Rename list_crates_publish to list_cratesIan Jackson2024-05-089-11/+11
| | | | |
| * | | | ABolish maint/list_cratesIan Jackson2024-05-082-31/+0
| | | | | | | | | | | | | | | | | | | | There are no callers any more.
| * | | | maint/check_doc_features: Use new list_crates_publish (nfc)Ian Jackson2024-05-081-2/+3
| | | | |
| * | | | maint/every-crate: Use new list_crates_publish (nfc)Ian Jackson2024-05-081-1/+1
| | | | |
| * | | | maint/changed_crates: Use new list_crates_publishIan Jackson2024-05-081-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace ad-hoc filtering, relying on things being in crates/. The following crates are no longer considered by this script: arti-bench arti-config arti-testing tor-congestion tor-events tor-hspow
| * | | | maint/matrix_test: Use new list_crates_publish (nfc)Ian Jackson2024-05-082-3/+4
| | | | |
| * | | | maint/list_crates_publish: Factor out callable, and add types (nfc)Ian Jackson2024-05-081-10/+24
| | | | |
* | | | | Merge branch 'allow' into 'main'Nick Mathewson2024-05-131-0/+1
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | Suppress a false positive for a new lint on Rust Beta See merge request tpo/core/arti!2144
| * | | | Suppress a false positive for a new lint on Rust BetaIan Jackson2024-05-131-0/+1
|/ / / /
* | | | Merge branch 'doc_fix' into 'main'Nick Mathewson2024-05-101-2/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Fix rustdoc errors from !2140. See merge request tpo/core/arti!2142
| * | | | Fix rustdoc errors from !2140.Nick Mathewson2024-05-091-2/+2
|/ / / /
* | | | Merge branch 'rpc_stream_preliminaries' into 'main'Nick Mathewson2024-05-0915-51/+241
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | RPC: Preliminaries for RPC-stream integration See merge request tpo/core/arti!2140
| * | | | RPC: Un-parameterize RpcSession.Nick Mathewson2024-05-092-30/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead, add a trait so that we can hold TorClient<R> and invoke only the methods on it that we need. This is a partial revert of 47f012829d3381fd896c6b6f20961fbfe2f40f6d.
| * | | | RPC: Use one cast table entry per type.Nick Mathewson2024-05-091-29/+47
| | | | |
| * | | | tor-rpcbase: Add facility to downcast to Arc<dyn Trait>.Nick Mathewson2024-05-093-9/+84
| | | | | | | | | | | | | | | | | | | | | | | | | Previously we could only downcast to &dyn Trait, which is not adequate.
| * | | | Make cast_to_trait inherent on dyn Object.Nick Mathewson2024-05-091-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | This makes `ObjectRefExt` less necessary, and will let us make it Arc-only.
| * | | | rpcserver: rename streams.rs to codecs.rs.Nick Mathewson2024-05-093-2/+2
| | | | | | | | | | | | | | | | | | | | I think I'm going to add another stream management module here.
| * | | | proto: Expose wait_for_connection as a part of the DataStream API.Nick Mathewson2024-05-091-1/+1
| | | | |
| * | | | rpc: Mark TorClient as exposed outside of sessionNick Mathewson2024-05-091-1/+6
| | | | |
| * | | | rpc: Teach RpcSession to expose and isolate clients.Nick Mathewson2024-05-091-1/+39
| | | | |
| * | | | Make RpcSession parameterized.Nick Mathewson2024-05-093-22/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change allows it to hold a TorClient<R> that isn't type-erased. We'll use this for cases when we need to get the client directly and call functions on it.
| * | | | rpc: Add an isolated-client method on TorClient.Nick Mathewson2024-05-092-3/+27
| | | | |
| * | | | rpc::invoker_ent_list: allow trailing comma.Nick Mathewson2024-05-091-1/+1
| | | | |
| * | | | rpc: Add helper type for methods that return a single id.Nick Mathewson2024-05-093-0/+10
| | | | |
* | | | | Merge branch 'vanguard-todos' into 'main'gabi-2502024-05-097-75/+117
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | tor-guardmgr: Address some vanguard-related TODOs See merge request tpo/core/arti!2139
| * | | | | tor-guardmgr: Map NoSuitableRelay errors to ErrorKind::NoPath.Gabriela Moldovan2024-05-091-2/+1
| | | | | |