summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | | Merge branch 'arti-relay-bin' into 'main'David Goulet2024-09-263-9/+34
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | arti: move 'relay' subcommand to 'subcommands::relay' module See merge request tpo/core/arti!2455
| * | | | | | arti: move 'relay' subcommand to 'subcommands::relay' moduleSteven Engler2024-09-253-9/+34
| | | | | | |
* | | | | | | Merge branch 'msrv-1.77-and-rusqlite-update' into 'main'David Goulet2024-09-2666-79/+80
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | Upgrade MSRV to 1.77 , and rusqlite to 0.32.1 See merge request tpo/core/arti!2451
| * | | | | | downgrade_dependencies: Add exception for ring 0.16Nick Mathewson2024-09-251-1/+2
| | | | | | |
| * | | | | | Use Rust 1.77 for our reproducible builds.Nick Mathewson2024-09-252-2/+2
| | | | | | |
| * | | | | | Upgrade to rusqlite 0.32.1.Nick Mathewson2024-09-252-15/+15
| | | | | | |
| * | | | | | Upgrade MSRV to 1.77Nick Mathewson2024-09-2563-63/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow us to upgrade to the latest version of rusqlite.
* | | | | | | Merge branch 'upgrades-20240925' into 'main'Nick Mathewson2024-09-2661-218/+236
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upgrade dependencies in preparation for next week's releases. See merge request tpo/core/arti!2450
| * | | | | | | Upgrade to derive_more version 1.0.0Nick Mathewson2024-09-2561-215/+233
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `derive_more` crate broke backward compatibility with this version, so this change involved quite a few manual fixups. With luck, they'll keep compatibility for some while in the future.
| * | | | | | | Upgrade to latest version of float-cmp.Nick Mathewson2024-09-252-3/+3
| | | | | | | |
* | | | | | | | Merge branch 'rpc_socks_ordering' into 'main'gabi-2502024-09-261-12/+12
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | rpclib: read SOCKS _after_ processing. See merge request tpo/core/arti!2452
| * | | | | | | rpclib: read SOCKS _after_ processing.Nick Mathewson2024-09-251-12/+12
| | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When doing the client handshake, we need to read data _after_ we check for stuff to send, since the client speaks first in the socks protocol. Without this patch, the socks handshake just stalls.
* | | | | | | Merge branch 'rpc-meta-draft-typos' into 'main'Nick Mathewson2024-09-251-7/+7
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | rpc-meta-draft.md: correct some minor typos See merge request tpo/core/arti!2453
| * | | | | | rpc-meta-draft.md: correct some minor typosJim Newsome2024-09-251-7/+7
|/ / / / / /
* | | | | | Merge branch 'socks_read_zero' into 'main'Nick Mathewson2024-09-254-5/+30
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | socks users: detect closed sockets. (TROVE-2024-011) Closes #1635 See merge request tpo/core/arti!2447
| * | | | | | socks users: copy the correct amount in our drain logic.Nick Mathewson2024-09-242-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When calling copy_within, we want to copy the amount of data that we're keeping; previously, we were copying an extra `action.drain` bytes, which could have led to a panic. Spotted by Opara.
| * | | | | | socks users: detect closed sockets.Nick Mathewson2024-09-244-3/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without this check, our socks code can enter an infinite loop if a socket is closed at the wrong time. Resolves TROVE-2024-011. Fixes #1635.
* | | | | | | Merge branch 'rename_singleton_id' into 'main'Jim Newsome2024-09-255-14/+14
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | / | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | rpc: Rename SingletonId to SingleIdResponse Closes #1585 See merge request tpo/core/arti!2448
| * | | | | rpc: Rename SingletonId to SingleIdResponseNick Mathewson2024-09-245-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling it "singleton" might have suggested that it was using the [singleton pattern](https://en.wikipedia.org/wiki/Singleton_pattern), which it isn't. (Renaming done with rust-analyzer and double-checked with `git grep`.) Closes #1585.
* | | | | | Merge branch 'fixup-features-09-25-2024' into 'main'Nick Mathewson2024-09-257-6/+7
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | | | | | | | | | | | | | Run fixup-features in preparation for upcoming release. See merge request tpo/core/arti!2449
| * | | | | Run fixup-features in preparation for upcoming release.Nick Mathewson2024-09-257-6/+7
|/ / / / /
* | | | | Merge branch 'update-axum' into 'main'Nick Mathewson2024-09-243-125/+35
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | obfs4-checker: update axum to 0.7.6 See merge request tpo/core/arti!2445
| * | | | obfs4-checker: update axum to 0.7.6Steven Engler2024-09-243-125/+35
|/ / / /
* | | | Merge branch 'main' into 'main'opara2024-09-246-5/+230
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | add example: axum router as onion service See merge request tpo/core/arti!2422
| * | | | add example: axum router as onion servicetidely2024-09-246-5/+230
| | | | |
* | | | | Merge branch 'impl-prop-351' into 'main'Nick Mathewson2024-09-241-124/+106
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | socks: Implement proposal 351. See merge request tpo/core/arti!2401
| * | | | socks: Add a comment about interpreting legacy usernames.Nick Mathewson2024-09-241-0/+5
| | | | |
| * | | | socks: cleanups in interpret_socks_authNick Mathewson2024-09-181-12/+22
| | | | | | | | | | | | | | | | | | | | Introduce an enum, and use explicit `format_code @` syntax.
| * | | | prop351: comment Suggestions from @diziet.Nick Mathewson2024-09-181-1/+4
| | | | |
| * | | | Socks: isolate streams from different extended-socks formatsNick Mathewson2024-09-181-3/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (These streams would already be isolated by accident, since streams with an RPC object are always on a client that's isolated from the main client. But, as discussed on torspec!280, it's best to do this sort of thing explicitly.)
| * | | | socks: Optimistically revise format to match torspec!280Nick Mathewson2024-09-101-43/+53
| | | | |
| * | | | socks: update protocol documentationNick Mathewson2024-09-091-78/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current best source here is prop351, and later will be socks-extensions.md. The examples are now correct.
| * | | | socks: Implement proposal 351.Nick Mathewson2024-09-091-40/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See https://spec.torproject.org/proposals/351-socks-auth-extensions.html This proposal changes the interpretation of SOCKS5 usernames/passwords to give a more principled and extensible way of getting RPC IDs and isolation strings.
* | | | | Merge branch 'impl-prop-351-client' into 'main'Nick Mathewson2024-09-243-11/+16
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | rpclib: Use prop351 protocol to open streams. See merge request tpo/core/arti!2434
| * | | | | rpclib: Use prop351 protocol to open streams.Nick Mathewson2024-09-183-11/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that prop351 is what Arti speaks, it's what the rpclib needs to provide. Note one change in particular: the `isolation` string is no longer an optional argument when opening a stream. (With prop351, there is no longer such a thing as an "absent" isolation string, and we don't want to imply that there is a difference between None and "".)
* | | | | | Merge branch 'pessimistic' into 'main'Nick Mathewson2024-09-241-0/+5
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | arti SOCKS proxy: Tear down connections when client sends optimistic data See merge request tpo/core/arti!2443
| * | | | | | arti SOCKS proxy: Tear down connections when client sends optimistic dataIan Jackson2024-09-241-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We *do* want to support optimistic data, see https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2436#note_3081886 However, right now, Arti risks mis-framing bugs if clients do send optimistic data, which would be quite serious. Mitigates #1627 / TROVE-2024-010 by replacing the misframing bug with connection failure. It doesn't seem so easy to write a test case for this.
* | | | | | | Merge branch 'rpc-expose-delegation' into 'main'Nick Mathewson2024-09-245-5/+85
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RPC: Expose delegation information to help documentation Closes #1624 See merge request tpo/core/arti!2418
| * | | | | | | rpc: Expose a delegation table in arti:x_list_all_rpc_methodsNick Mathewson2024-09-244-1/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #1624.
| * | | | | | | rpc: add mandatory delegate-type attribute to Object templateNick Mathewson2024-09-243-4/+16
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | | | Merge branch 'hscircpool-builder-generic' into 'main'gabi-2502024-09-249-464/+875
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make `HsCircPool` generic over circuit builder type See merge request tpo/core/arti!2420
| * | | | | | | CircMgr: Make CircMgr and HsCircPool generic over builder type.Wesley Aptekar-Cassels2024-09-249-464/+875
| | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow for testing, as the CircuitBuilder can be replaced with a mocked version. This did require moving some of what was in the CircuitBuilder impl into the AbstractCircuitBuilder type, since Drop implementations can't be specialized, but that's fine, as we'll probably be doing more of that in the future anyways.
* | | | | | | Merge branch 'abstract-socket-v2' into 'main'Nick Mathewson2024-09-2433-406/+979
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rtcompat: Second attempt at AF_UNIX support Closes #1152 See merge request tpo/core/arti!2437
| * | | | | | rtcompat: Finalize names for general::SocketAddr.Nick Mathewson2024-09-242-44/+52
| | | | | | |
| * | | | | | rtcompat: Expose FakeStream and friends; fix compilation in tor-rtmockNick Mathewson2024-09-244-17/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that these types are generally useful, and that they are in fact needed for tor-rtmock to compile without a PreferredRuntime.
| * | | | | | rtcompat: Fix some rustdoc links.Nick Mathewson2024-09-244-6/+6
| | | | | | |
| * | | | | | rtcompat: remove async_trait from NetStreamListener.Nick Mathewson2024-09-248-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (The trait no longer has any async methods.)
| * | | | | | Make Runtime require NetStreamProvider<unix::SocketAddr>Nick Mathewson2024-09-247-10/+46
| | | | | | |
| * | | | | | rtcompat: initial implementation for "Abstract" addresses.Nick Mathewson2024-09-242-0/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is feature-complete, but will need tests. I'm holding off at this point so we can discuss naming on these types.
| * | | | | | rtcompat: Require Sync and 'static for NetStreamListener::IncomingNick Mathewson2024-09-243-2/+7
| | | | | | |