summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * RPC: make arti-rpcserver require the arti-client/rpc featureNick Mathewson2023-05-041-1/+1
| |
| * check-licenses: Permit MPL-2.0Nick Mathewson2023-05-041-0/+1
| | | | | | | | | | | | | | | | The generational-arena crate is distributed under MPL-2.0, so we need to allow it. I believe that this license is fine and does not interfere with our code or our users; the reviewer should double-check.
| * RPC: Rename session.rs to connection.rsNick Mathewson2023-05-044-4/+4
| |
| * RPC: rename Session to Connection.Nick Mathewson2023-05-043-45/+48
| | | | | | | | | | | | | | To me, "Session" suggests that we're authenticated, when we are not necessarily authenticated. Also, we may eventually want to have some kind of persistent session object; if we do, then we'll want Connections to be separate.
| * RPC: Make authentication return a TorClient.Nick Mathewson2023-05-042-58/+66
| | | | | | | | | | | | (This is the correct capabilities-based behavior. For now it will only work if the TorClient uses a PreferredRuntime, but with luck we will find a solution for #837 soon.)
| * Add a generational arena for object mapping for RPC.Nick Mathewson2023-05-044-32/+713
| | | | | | | | | | | | See the comments on `TypedAddr` for some explanations about why this is so tricky. Thanks to @diziet for helping me figure this out.
| * RPC: Add "register" methods to RequestContext.Nick Mathewson2023-05-043-0/+38
| |
| * RPC: Start on plumbing TorClient into our RPC codeNick Mathewson2023-05-047-7/+40
| | | | | | | | | | Because of #837, we won't be able to work with _every_ TorClient<R>, so I'm only going to be using TorClient<PreferredRuntime> for now.
| * RPC: Move the "listen" part of the RPC listener code to `arti`.Nick Mathewson2023-05-0410-93/+160
| | | | | | | | | | | | | | | | | | Now there's a module in `arti` that runs the loop for an RPC listener. The part of the old `listener` module that made the framed connections is now part of the `Session` object. There is now yet another a temporary location for the pipe; we should pick something better. At least now it's configurable.
| * rpc: Make an RpcMgr type to own the DispatchTable.Nick Mathewson2023-05-047-15/+59
|/ | | | | | | | | In the future, this will probably hold more data as well, like a TorClient and some configuration info. The TorClient will present an issue; I've made comments about that. Closes #820
* Merge branch 'connect-parse-hsdesc' into 'main'gabi-2502023-05-0310-39/+179
|\ | | | | | | | | hs-client: Use a real HsDesc instead of an unparsed string. See merge request tpo/core/arti!1153
| * tor-error: Add a TODO regarding HS desc parsing errors.Gabriela Moldovan2023-05-031-0/+14
| | | | | | | | Signed-off-by: Gabriela Moldovan <[email protected]>
| * hscrypto: Add comment about impl that will be removed after we address #798.Gabriela Moldovan2023-05-031-0/+2
| | | | | | | | Signed-off-by: Gabriela Moldovan <[email protected]>
| * Clarify what the new ErrorKinds mean.Gabriela Moldovan2023-05-031-4/+14
| | | | | | | | Signed-off-by: Gabriela Moldovan <[email protected]>
| * tor-netdir: Update tests to parse the descriptor, make test consensus ↵Gabriela Moldovan2023-05-036-26/+93
| | | | | | | | | | | | lifetime configurable. Signed-off-by: Gabriela Moldovan <[email protected]>
| * hsclient: Use a real HsDesc instead of an unparsed string.Gabriela Moldovan2023-05-034-18/+59
| | | | | | | | Signed-off-by: Gabriela Moldovan <[email protected]>
| * hscrypto: Add From impl for deriving KP_hsc_desc_enc out of KS_hsc_desc_enc.Gabriela Moldovan2023-05-031-0/+6
|/ | | | | | | | | | The `HsClientSecretKeys` stored in the HS client connection context only have the secret keys. Certain APIs (such as `HsDesc::parse`) expect a keypair (both `HsClientDescEncKey` and `HsClientDescEncSecretKey`). This `From` impl makes it possible to get a `HsClientDescEncKey` out of `HsClientDescEncSecretKey`. Signed-off-by: Gabriela Moldovan <[email protected]>
* Merge branch 'more_dir_logging' into 'main'Nick Mathewson2023-05-0321-34/+69
|\ | | | | | | | | | | | | Lots more dirmgr log messages Closes #803 See merge request tpo/core/arti!1163
| * Upgrade tracing to 0.1.36.Nick Mathewson2023-05-0319-20/+20
| | | | | | | | | | | | This is the first version to impl Value for String. With luck, this will get minimal_versions CI passing.
| * DirMgr: More logs in top-level bootstrapping code.Nick Mathewson2023-05-031-5/+12
| | | | | | | | Closes #803, I hope.
| * DirMgr: more trace!() logs and information in download/load functions.Nick Mathewson2023-05-031-8/+30
| | | | | | | | | | | | | | My goal here is to make sure that we can't confuse one download operation and another, and that we actually know what's going on. Previously, not all state transitions or attempts to fetch information actually corresponded to a log.
| * DirMgr: Log at trace! when starting a new "AttemptId".Nick Mathewson2023-05-031-1/+7
| |
* | Merge branch 'hsdesc-parse-decrypt-validate' into 'main'gabi-2502023-05-032-1/+75
|\ \ | | | | | | | | | | | | | | | | | | netdoc: Add a convenience method for HS descriptor parsing. Closes #809 See merge request tpo/core/arti!1152
| * | netdoc: Mark parse_decrypt_validate as experimental.Gabriela Moldovan2023-05-022-0/+6
| | | | | | | | | | | | Signed-off-by: Gabriela Moldovan <[email protected]>
| * | netdoc: Document how to extract an `HsDesc` out of an ↵Gabriela Moldovan2023-04-251-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | `UncheckedEncryptedHsDesc`. This adds an example to the `HsDesc::parse` docs. The constants from the example are lifted from the `parse_desc_good` test. Signed-off-by: Gabriela Moldovan <[email protected]>
| * | netdoc: Add a convenience method for HS descriptor parsing.Gabriela Moldovan2023-04-252-1/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | This adds the `HsDesc::parse_decrypt_validate` method, which parses, decrypts, and validates HS descriptors. Closes #809 Signed-off-by: Gabriela Moldovan <[email protected]>
* | | Merge branch 'api-sketch' into 'main'Nick Mathewson2023-05-031-0/+149
|\ \ \ | |_|/ |/| | | | | | | | Add a sketch for our FFI/RPC architecture See merge request tpo/core/arti!1005
| * | ffi_rpc_sketch: rearrange.Nick Mathewson2023-02-031-9/+9
| | |
| * | ffi_rpc_sketch: tweak colors.Nick Mathewson2023-02-031-3/+3
| | |
| * | Add a sketch for our FFI/RPC architectureNick Mathewson2023-02-031-0/+149
| | | | | | | | | | | | | | | | | | I think that this might be the way forward, depending on our current requirements and our users' current needs. I've traced out some challenges that would imply.
* | | Merge branch 'finalize_release' into 'main'arti-v1.1.4Nick Mathewson2023-05-0349-348/+341
|\ \ \ | | | | | | | | | | | | | | | | Final work for releasing 1.1.4 See merge request tpo/core/arti!1168
| * | | Remove semver.md files.Nick Mathewson2023-05-034-5/+0
| | | |
| * | | Increment crate versions.Nick Mathewson2023-05-0344-341/+341
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because of the errorkind bumps, we're calling this a breaking change in everything lower-level than `arti`. Generated with: ``` cargo set-version -p tor-basic-utils --bump minor cargo set-version -p tor-async-utils --bump minor cargo set-version -p caret --bump minor cargo set-version -p fs-mistrust --bump minor cargo set-version -p safelog --bump minor cargo set-version -p retry-error --bump minor cargo set-version -p tor-error --bump minor cargo set-version -p tor-config --bump minor cargo set-version -p tor-events --bump minor cargo set-version -p tor-units --bump minor cargo set-version -p tor-rtcompat --bump minor cargo set-version -p tor-rtmock --bump minor cargo set-version -p tor-rpcbase --bump minor cargo set-version -p tor-llcrypto --bump minor cargo set-version -p tor-protover --bump minor cargo set-version -p tor-bytes --bump minor cargo set-version -p tor-hscrypto --bump minor cargo set-version -p tor-socksproto --bump minor cargo set-version -p tor-checkable --bump minor cargo set-version -p tor-cert --bump minor cargo set-version -p tor-linkspec --bump minor cargo set-version -p tor-cell --bump minor cargo set-version -p tor-proto --bump minor cargo set-version -p tor-netdoc --bump minor cargo set-version -p tor-consdiff --bump minor cargo set-version -p tor-netdir --bump minor cargo set-version -p tor-congestion --bump minor cargo set-version -p tor-persist --bump minor cargo set-version -p tor-chanmgr --bump minor cargo set-version -p tor-ptmgr --bump minor cargo set-version -p tor-guardmgr --bump minor cargo set-version -p tor-circmgr --bump minor cargo set-version -p tor-dirclient --bump minor cargo set-version -p tor-dirmgr --bump minor cargo set-version -p tor-hsclient --bump minor cargo set-version -p tor-hsservice --bump minor cargo set-version -p arti-client --bump minor cargo set-version -p arti-rpcserver --bump minor cargo set-version -p arti-config --bump minor cargo set-version -p arti-hyper --bump minor cargo set-version -p arti --bump patch cargo set-version -p arti-bench --bump patch cargo set-version -p arti-testing --bump patch ```
| * | | Finalize changelog.Nick Mathewson2023-05-031-2/+0
|/ / /
* | | Merge branch 'more_links_in_readme' into 'main'Ian Jackson2023-05-031-0/+9
|\ \ \ | | | | | | | | | | | | | | | | Add a couple of links to the top-level README. See merge request tpo/core/arti!1164
| * | | Add a couple of links to the top-level README.Nick Mathewson2023-05-011-0/+9
| | | | | | | | | | | | | | | | | | | | Notably, I'm adding a note to the `arti` README, which includes information on how to build and use the thing.
* | | | Merge branch 'changelog_20230501' into 'main'Nick Mathewson2023-05-021-1/+151
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Start on a changelog for Wednesday's release of Arti 1.1.4 See merge request tpo/core/arti!1165
| * | | | changelog: grammar/style fixNick Mathewson2023-05-021-1/+1
| | | | |
| * | | | changelog: add acknowledgements and links.Nick Mathewson2023-05-021-2/+48
| | | | |
| * | | | changelog: get up-to-date with main.Nick Mathewson2023-05-021-1/+4
| | | | |
| * | | | changelog: mention support of --document-private-itemsNick Mathewson2023-05-021-0/+1
| | | | |
| * | | | changelog: correct location of SinkPrepareExt.Nick Mathewson2023-05-021-1/+1
| | | | |
| * | | | changelog: document one more semver issue.Nick Mathewson2023-05-011-1/+2
| | | | |
| * | | | Start on a changelog for Arti 1.1.4Nick Mathewson2023-05-011-1/+100
| |/ / /
* | | | Merge branch 'relayid' into 'main'Alexander Færøy2023-05-022-12/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | RelayId: Remove some duplication and relax a lifetime See merge request tpo/core/arti!1156
| * | | | RelayId: implement id_type and as_bytes in terms of RelayIdRefIan Jackson2023-04-271-8/+2
| | | | | | | | | | | | | | | | | | | | This eliminates some duplicated code.
| * | | | RelayIdRef: as_bytes: Doesn't borrow from selfIan Jackson2023-04-272-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This borrows from the contained key, but not from self. This will allow us to implement RelayId::as_bytes in terms of RelayIdRef::as_bytes.
| * | | | RelayId: impl Display in terms of RelayIdRefIan Jackson2023-04-271-3/+9
| | | | | | | | | | | | | | | | | | | | This removes a duplicated copy of the format strings.
* | | | | Merge branch 'arti-client-doc-test' into 'main'Alexander Færøy2023-05-021-1/+2
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | arti-client: Only run BridgesConfig doc test if pt-client feature is enabled. Closes #843 See merge request tpo/core/arti!1166
| * | | | arti-client: Only run BridgesConfig doc test if pt-client feature is enabled.Gabriela Moldovan2023-05-021-1/+2
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of the tests run as part of `cargo test -p arti-client` fails because the `pt-client` feature is not enabled by default: ``` failures: ---- src/config.rs - config::BridgesConfig (line 221) stdout ---- error[E0432]: unresolved import `arti_client::config::pt` --> src/config.rs:225:26 | 7 | use arti_client::config::pt::ManagedTransportConfigBuilder; | ^^ could not find `pt` in `config` error[E0599]: no method named `bridges` found for mutable reference `&mut BridgesConfigBuilder` in the current scope --> src/config.rs:233:19 | 15 | builder.bridges().bridges().push(bridge_1); | ^^^^^^^ private field, not a method error[E0599]: no function or associated item named `default` found for struct `BridgeConfigBuilder` in the current scope --> src/config.rs:236:48 | 18 | let mut bridge2_builder = BridgeConfigBuilder::default(); | ^^^^^^^ function or associated item not found in `BridgeConfigBuilder` error[E0599]: no method named `bridges` found for mutable reference `&mut BridgesConfigBuilder` in the current scope --> src/config.rs:247:19 | 29 | builder.bridges().bridges().push(bridge2_builder); | ^^^^^^^ private field, not a method error[E0599]: no method named `transports` found for mutable reference `&mut BridgesConfigBuilder` in the current scope --> src/config.rs:255:19 | 37 | builder.bridges().transports().push(transport); | ^^^^^^^^^^ method not found in `&mut BridgesConfigBuilder` error: aborting due to 5 previous errors Some errors have detailed explanations: E0432, E0599. For more information about an error, try `rustc --explain E0432`. Couldn't compile the test. failures: src/config.rs - config::BridgesConfig (line 221) test result: FAILED. 5 passed; 1 failed; 3 ignored; 0 measured; 0 filtered out; finished in 2.10s ``` This disables the `BridgesConfig` doc test if the `pt-client` feature is not enabled. Closes #843 Signed-off-by: Gabriela Moldovan <[email protected]>