summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* Add builder for encoding hidden service descriptors.Gabi Moldovan2023-03-2415-44/+1278
| | | | | | | | | | | | | | This introduces the `NetdocBuilder` trait described in `netdoc-builder.md` and a new `tor-netdoc::doc::hsdesc::build` module, which exports the `HsDescBuilder`. Hidden services will use `HsDescBuilder` to build and encode hidden service descriptors. There are several TODOs in the code that I'm planning to address separately. Partially addresses #745. Signed-off-by: Gabriela Moldovan <[email protected]>
* Define constants for `AuthClient` field lengths.Gabriela Moldovan2023-03-242-7/+19
| | | | | | | These are used in multiple places (and will also be used by the HS descriptor encoder later on), so let's make them named constants. Signed-off-by: Gabriela Moldovan <[email protected]>
* Implement `ItemArgument` for `String`.Gabriela Moldovan2023-03-241-0/+6
| | | | | | | This makes some code a bit more concise, as it allows us to make `Strings` into `ItemArgument`s without calling `.as_str()`. Signed-off-by: Gabriela Moldovan <[email protected]>
* Merge branch 'openssl_update' into 'main'Ian Jackson2023-03-241-1/+1
|\ | | | | | | | | Update required openssl version See merge request tpo/core/arti!1077
| * Update required openssl versionNick Mathewson2023-03-241-1/+1
| | | | | | | | cargo-audit is complaining about 0.10.45.
* | Fix typosDimitris Apostolou2023-03-241-1/+1
|/
* Merge branch 'paths' into 'main'Alexander Færøy2023-03-232-5/+64
|\ | | | | | | | | | | | | Do minimal $ and ~ handling even without expand-paths and fix build Closes #790 See merge request tpo/core/arti!1069
| * tor-config: Apply deferred rustfmt churnIan Jackson2023-03-211-4/+4
| |
| * tor-config: Do minimal $ and ~ handling even without expand-pathsIan Jackson2023-03-212-2/+58
| | | | | | | | Fixes #790
| * tor-config: Make CfgPathError PartialEq but only when testingIan Jackson2023-03-211-0/+1
| | | | | | | | So, this is not a semver addition.
| * tor-config: Fix build when expand-paths is disabledIan Jackson2023-03-211-2/+5
| |
| * tor-config: paths, unexpanded: use infallible conversionIan Jackson2023-03-211-2/+1
| | | | | | | | str can always be made into a PathBuf.
* | Merge branch 'upgrade_dirs' into 'main'Alexander Færøy2023-03-233-4/+4
|\ \ | | | | | | | | | | | | Bump to the lastest versions of dirs and directories. See merge request tpo/core/arti!1072
| * | Bump to the lastest versions of dirs and directories.Nick Mathewson2023-03-223-4/+4
| | |
* | | Add an experimental circuit accessor to DataStream.Nick Mathewson2023-03-232-2/+34
| | | | | | | | | | | | Closes #784.
* | | Apply deferred rustfmt churnIan Jackson2023-03-231-1/+4
| | |
* | | arti-client: Include redacted HsId in ObtainHsCircuit errorIan Jackson2023-03-233-5/+5
| | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1071/diffs?commit_id=580fe1118dbbbfa086d11b28e3e26d7c91afe21c#fbd7ab2d6d0a5b515697d4f9f99a42ebd508aa4b_153_165
* | | safelog: impl From<T> for Redacted<T>Ian Jackson2023-03-232-0/+2
| | | | | | | | | | | | I think this is uncontroversial; we already have it for Sensitive.
* | | arti-client: Fix wording of docs for TorClient::isolationIan Jackson2023-03-231-1/+1
| | |
* | | arti-client: Strengthen an HS todoNick Mathewson2023-03-231-1/+1
| | |
* | | tor-proto: Feature-conditionalise some enum variantsIan Jackson2023-03-231-0/+6
| | | | | | | | | | | | This avoids some dead code warnings when building without send-control-msg.
* | | tor-proto: Split off send-control-msg featureIan Jackson2023-03-234-7/+8
| | |
* | | arti: Provide onion-service-client featureIan Jackson2023-03-232-1/+4
| | | | | | | | | | | | Here I use the name I propose in !1039.
* | | arti-client: Call tor-hsclient to create HS connectionsIan Jackson2023-03-232-4/+27
| | | | | | | | | | | | | | | Obviously this still doesn't work because the actual impl in hsclient is just a todo!().
* | | arti-client: Create an HsClientConnectorIan Jackson2023-03-233-1/+24
| | |
* | | arti-client: Move client stream creation out of match, in connectIan Jackson2023-03-231-16/+17
| | | | | | | | | | | | We want this part for HS too.
* | | arti-client: Break out TorClient::isolation(prefs)Ian Jackson2023-03-231-17/+32
| | | | | | | | | | | | | | | | | | | | | | | | We're going to want to reuse this. Also: rename StreamPrefs::isolation and update the docs, to better reflect its rather limited functionality. The new TorClient::isolation is the only call site.
* | | tor-hsclient: Have the public API take StreamIsolationIan Jackson2023-03-231-2/+7
| | |
* | | tor-hsclient: impl HasKind for errorsIan Jackson2023-03-231-1/+20
| | |
* | | tor-hsclient: Swap errors so Bug comes lastIan Jackson2023-03-231-4/+4
| | | | | | | | | | | | This seems more consistent with the way it's done elsewhere.
* | | tor-hsclient: Document clone-nature of HsClientConnectorIan Jackson2023-03-231-0/+3
|/ /
* | hspool: simplify loop and add a maximumNick Mathewson2023-03-221-41/+39
| |
* | hspool: Clarify/document more TODO HS items.Nick Mathewson2023-03-221-2/+8
| |
* | circmgr: Make a separate SupportedCircUsage for HS stuffNick Mathewson2023-03-221-3/+6
| | | | | | | | | | This uncovered a bug: NoUsage wasn't correct for Hs circuits because of its behavior with channel_usage().
* | tor-proto: document deep-copy in ClientCirc::path()Nick Mathewson2023-03-221-0/+4
| |
* | circmgr: Declare builder() unconditionally.Nick Mathewson2023-03-222-7/+18
| | | | | | | | (Still, only expose it when experimental-api is enabled.)
* | hspool: Tweak comments and add more TODOs.Nick Mathewson2023-03-221-10/+33
| |
* | circmgr: hspool now launches circuits in the background.Nick Mathewson2023-03-221-11/+157
| | | | | | | | | | | | The prediction and scheduling logic here is quite primitive; we should probably refactor it considerably. This should be good enough for now, though.
* | circmgr: Add an actual pool to HsCircPool.Nick Mathewson2023-03-222-6/+173
| | | | | | | | | | | | | | | | We now have support for a pool of pre-build circuits that we can use for HS-related purposes, and we take circuits from this pool as needed. Nothing populates or cleans the circuit pool yet.
* | circmgr: Begin an HS circuit pool structureNick Mathewson2023-03-223-0/+162
| | | | | | | | | | This is now enough to launch circuits on demand. It still needs to pre-build the first three hops, and to retry on failure.
* | proto: Stabilize ClientCirc::n_hops.Nick Mathewson2023-03-222-1/+7
| |
* | circmgr: Add a usage for building the beginning of an hs circNick Mathewson2023-03-223-16/+86
| | | | | | | | | | This only builds the first 3 hops. It can be extended to a fourth hop later -- or not, depending on the circuit kind.
* | circmgr: Functions to launch an unmanaged circuit.Nick Mathewson2023-03-222-3/+26
|/ | | | We'll use this to implement the circuits used by onion circuits.
* Turn two blocking TODOs in hsdesc into "TODO HS"Ian Jackson2023-03-212-2/+2
| | | | TODO HS is blocking for HS release, but not for CI.
* Sort out some TODOs in bdtest.rsIan Jackson2023-03-211-5/+4
|
* Convert blockers in arti-testing to TODOsIan Jackson2023-03-211-2/+2
| | | | I don't think these are that bad in testing code.
* remove unused type parametertrinity-1686a2023-03-181-1/+1
|
* Merge branch 'fix-ptmgr-fuzz' into 'main'Alexander Færøy2023-03-131-0/+1
|\ | | | | | | | | tor-ptmgr: Fix fuzzer compilation. See merge request tpo/core/arti!1063
| * tor-ptmgr: Fix fuzzer compilation.Nick Mathewson2023-03-131-0/+1
| | | | | | | | | | | | Since we made the internals of the ptmgr protocol parser conditionally private, we need to tell Cargo to build the fuzzer with the `experimental-api` feature so that it can access them.
* | Upgrade to bitflags 2.0Nick Mathewson2023-03-136-4/+7
|/ | | | | This version of bitflags now requires us to explicitly list the traits that we want to derive for our bit-flags structs.