summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | doc/dev/notes: cell-lifecycle: Say that stream management details are elided.Gabriela Moldovan2024-11-211-0/+4
| | |
| * | doc/dev/notes: cell-lifecycle: We only describe the unbounded buffers.Gabriela Moldovan2024-11-211-3/+3
| | |
| * | doc/dev/notes: cell-lifecycle: Say that the reactor awaits rather than blocks.Gabriela Moldovan2024-11-211-1/+1
| | |
| * | doc/dev/notes: cell-lifecycle: Describe the current state of things.Gabriela Moldovan2024-11-201-0/+319
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are my notes and observations about the circuit and channel reactors. In hindsight, this whole document is just stating the "obvious"[^1], so I'm not sure if it's going to be useful for anyone else. Also, since this isn't part of the code docs or tor-proto crate-level docs, it's very likely to become outdated in the near future. At the end of the document, I also wrote a very rough KIST implementation plan based on the discussion from #1712. Closes #1747 [^1]: scare quotes because the "obvious" is only obvious after you've stared at the circ/chan reactors for a while
| * | tor-proto: Specify which of the 2 senders is used for sending cells.Gabriela Moldovan2024-11-201-1/+1
| | |
| * | tor-proto: Fix typo in streammap docs.Gabriela Moldovan2024-11-191-1/+1
| | |
* | | Merge branch 'hs-host-pow' into 'main'wesleyac2024-11-2524-136/+325
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Start of host-side onion service PoW support Closes #1691 See merge request tpo/core/arti!2609
| * | | tor-netdoc: Error on PowParams::V1 when hs-pow-v1 is disabled.Wesley Aptekar-Cassels2024-11-251-2/+11
| | | |
| * | | tor-netdoc: Don't include pow_params in HsDesc when feature is disabled.Wesley Aptekar-Cassels2024-11-252-7/+8
| | | |
| * | | Add TODO to error if enable_pow is set but feature flag is disabled.Wesley Aptekar-Cassels2024-11-251-0/+1
| | | |
| * | | tor-hsservice: Clarify enable_pow setting TODO.Wesley Aptekar-Cassels2024-11-251-1/+1
| | | |
| * | | tor-netdir: Add timeliness param to wait_for_netdir_to_list.Wesley Aptekar-Cassels2024-11-252-2/+3
| | | |
| * | | Move helpers from tor-hsservice to tor-netdir.Wesley Aptekar-Cassels2024-11-259-100/+96
| | | | | | | | | | | | | | | | | | | | These helpers seem potentially broadly useful, and only really discoverable if they're here.
| * | | tor-hscrypto: Add Verifier::seed() helper function.Wesley Aptekar-Cassels2024-11-251-0/+7
| | | |
| * | | tor-hscrypto: Add Seed::new.Wesley Aptekar-Cassels2024-11-251-0/+43
| | | | | | | | | | | | | | | | | | | | This includes the ability to generate a seed that does not share a head with the previously used seed, which is generally what we want to do.
| * | | tor-netdoc: Support writing pow-params line.Wesley Aptekar-Cassels2024-11-254-2/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm not particularly happy with the code that does the actual writing out of the pow-params line, in particular the error handling there seems very verbose. However, I don't know of a better way to structure it given that APIs I'm working with.
| * | | TimerangeBound: Stop using std::ops::Bound.Wesley Aptekar-Cassels2024-11-258-32/+44
| | | | | | | | | | | | | | | | Fixes: #1691
| * | | arti: Add onion_service.enable_pow option.Wesley Aptekar-Cassels2024-11-252-2/+12
|/ / / | | | | | | | | | This currently is not implemented.
* | | Merge branch 'bump-rustls' into 'main'Nick Mathewson2024-11-251-2/+2
|\ \ \ | | | | | | | | | | | | | | | | cargo_audit: Bump rustls to 0.23.18. See merge request tpo/core/arti!2641
| * | | cargo_audit: Bump rustls to 0.23.18.Gabriela Moldovan2024-11-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rustls 0.23.13 introduced a bug that causes `Acceptor::accept` to panic if the client hello is fragmented (see [RUSTSEC-2024-0399]). We don't currently use `rustls::server::Acceptor::accept()` anywhere in arti (that I know of, at least), so I don't believe we're affected. [RUSTSEC-2024-0399]: https://rustsec.org/advisories/RUSTSEC-2024-0399
* | | | Merge branch 'transient-error-retry' into 'main'Alexander Hansen Færøy2024-11-252-1/+2
|\ \ \ \ | |/ / / |/| | | | | | | | | | | tor-chanmgr: change `RequestCancelled` retry from `Never` to `Immediate` See merge request tpo/core/arti!2640
| * | | tor-error: add comment to `ErrorKind::TransientFailure`Steven Engler2024-11-211-0/+1
| | | |
| * | | tor-chanmgr: change `RequestCancelled` retry from `Never` to `Immediate`Steven Engler2024-11-211-1/+1
|/ / / | | | | | | | | | | | | | | | | | | If the channel request was cancelled, we should be able to retry immediately. Additionally, the `kind()` of `RequestCancelled` is `TransientFailure`, and I don't think it make sense for a transient error to return a `retry_time()` of `Never`.
* | | Merge branch 'clippy-fixes' into 'main'Jim Newsome2024-11-203-0/+7
|\ \ \ | | | | | | | | | | | | | | | | Fix clippy errors See merge request tpo/core/arti!2639
| * | | tor-netdoc: add clippy allows and `#[non_exhaustive]`Steven Engler2024-11-201-0/+2
| | | |
| * | | tor-hsservice: add clippy allowsSteven Engler2024-11-201-0/+4
| | | |
| * | | tor-cell: add clippy allowsSteven Engler2024-11-201-0/+1
|/ / /
* | | Merge branch 'keymgr-cleanup' into 'main'David Goulet2024-11-203-39/+4
|\ \ \ | | | | | | | | | | | | | | | | tor-keymgr: Remove dead code See merge request tpo/core/arti!2638
| * | | tor-keymgr: Remove now-unnecessary cfg_attr.Gabriela Moldovan2024-11-201-6/+0
| | | | | | | | | | | | | | | | This doesn't seem to be needed anymore.
| * | | tor-keymgr: Remove now-unnecessary clippy allows from dummy impl.Gabriela Moldovan2024-11-201-2/+0
| | | |
| * | | tor-keymgr: Feature-gate RelKeyPath::from_parts constructor.Gabriela Moldovan2024-11-201-0/+1
| | | | | | | | | | | | | | | | | | | | Otherwise, we get a dead code warning when the `ctor-keystore` feature is disabled.
| * | | tor-keymgr: Allow dead code in dummy KeyMgr.Gabriela Moldovan2024-11-201-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fields are never read but need to be present in order for the dummy `KeyMgrBuilder` to have the same interface as the real one. (We could of course manually implement the builder, or let the dummy `KeyMgrBuilder` impl diverge from the real one, but for now let's leave this as-is and simply mark the fields as unused).
| * | | tor-keymgr: Remove unused dummy error type.Gabriela Moldovan2024-11-201-16/+1
| | | | | | | | | | | | | | | | | | | | We no longer have any dummy keymgr operations that return an error, so this error type is unused.
| * | | tor-keymgr: Remove unused imports from dummy module.Gabriela Moldovan2024-11-201-2/+1
| | | |
| * | | tor-keymgr: Remove unused dummy KeyType.Gabriela Moldovan2024-11-201-14/+0
| | | | | | | | | | | | | | | | This is not used anywhere (or exported publicly).
* | | | Merge branch 'connect-point-1' into 'main'Nick Mathewson2024-11-2013-27/+1648
|\ \ \ \ | |/ / / |/| | | | | | | | | | | Begin implementation work on RPC connect points See merge request tpo/core/arti!2629
| * | | connect point: Use new CfgPathResolver api.Nick Mathewson2024-11-191-12/+22
| | | |
| * | | connect point: handle unrecognized auth variants.Nick Mathewson2024-11-193-6/+39
| | | |
| * | | Connect point: Improve robustness against new SocketAddr variantsNick Mathewson2024-11-191-2/+10
| | | |
| * | | connect point: add a test for ConflictingMembers.Nick Mathewson2024-11-191-0/+13
| | | |
| * | | connect-point: Rename Reps to Addresses.Nick Mathewson2024-11-191-7/+7
| | | |
| * | | connect point: Add server support.Nick Mathewson2024-11-192-0/+71
| | | | | | | | | | | | | | | | | | | | ("Server support" here means binding to a socket and reading a cookie file.)
| * | | connect point: Add client support.Nick Mathewson2024-11-193-0/+182
| | | | | | | | | | | | | | | | | | | | ("Client support" here means connecting to a socket and reading a cookie file.)
| * | | connect point: Treat unrecognized auth types as Decline.Nick Mathewson2024-11-191-0/+9
| | | |
| * | | connect points: Validate more correctness propertiesNick Mathewson2024-11-191-4/+23
| | | | | | | | | | | | | | | | | | | | In particular, we only allow binding/connecting to localhost, and we only support None auth for Unix connections.
| * | | connect points: Remember original string addressesNick Mathewson2024-11-193-6/+61
| | | | | | | | | | | | | | | | The cookie authentication protocol will need these.
| * | | rpc-connect: Types for cookie authentication.Nick Mathewson2024-11-194-1/+193
| | | | | | | | | | | | | | | | (Cookie authentication is described in rpc-cookie-sketch.md)
| * | | rpc-connect: Move tempdir() helper to a new moduleNick Mathewson2024-11-193-17/+36
| | | |
| * | | RPC connect points: Facility to load from files.Nick Mathewson2024-11-194-1/+427
| | | |
| * | | connect point: implement FromStr.Nick Mathewson2024-11-191-17/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While doing so, tidy up the errors that we detect when parsing a connect point, so that we can differentiate ones that indicate an unsupported connect-point type. This means that fewer types now implement Deserialize; that's probably a good thing.