aboutsummaryrefslogtreecommitdiff
path: root/crates/arti-client/src/err.rs
Commit message (Collapse)AuthorAgeFilesLines
...
* Box the Error in a TorErrorIan Jackson2022-02-041-2/+10
| | | | | | This will get quite large and boxing it here is very convenient. This also avoids us exposing a large error type to our callers.
* errors: Handle exit circuit creation failure the new wayIan Jackson2022-02-041-1/+18
|
* errors: Handle circmgr setup errors differentlyIan Jackson2022-02-041-3/+3
| | | | | | | | | | | | | The motivation for doing this now is to remove the `#[from]` so we would spot where operationsl circuit setup failures were handled. (But it turns out that they are turned into internal errors!) Perhaps this will want to become a different error type from circmgr in due course, but for now we simply use a bespoke variant of TorError. It will want its own Kind. The TODO in the HasKind impl marks this (amongst much else here).
* errors: Introduce error_detail featureIan Jackson2022-02-041-2/+18
| | | | | Right now we must always expose the `Error` type since we haven't converted everything.
* errors: Refer to err::Error in some bits of arti_clientIan Jackson2022-02-041-0/+3
| | | | We are going to make the top-level Error type conditionally hidden.
* errors: Introduce TorErrorIan Jackson2022-02-041-1/+28
| | | | Still much to do here.
* errors: Initial impl HasKind in arti-client, ErrorKind::TODOIan Jackson2022-02-041-0/+7
| | | | | | | | | This involves making a temporary ErrorKind::TODO. That will continue to exist until all errors (at least, the ones that make it out to here) can be properly categorised. Introducing this will let us work from the top and bottom towards the middle.
* spawn errors: Fix arti-client, tor-chanmgr, tor-circmgrIan Jackson2022-02-041-3/+10
| | | | | | | Provide an enum variant to contain the SpawnError and a From impl. We use `#[from]` here because it doesn't really make sense to attach any context, as it's not likely to be very relevant.
* Sketch API for reconfiguration.Nick Mathewson2021-12-071-0/+4
| | | | | | | This patch doesn't actually make anything reconfigurable, but it does create an API that will tell you "you can't change the value of that!" If the API looks reasonable, I can start making it possible to change the values of individual items.
* Make arti-client config object match arti config better.Nick Mathewson2021-11-211-1/+1
| | | | | | | | Now every section that the two configuration objects share has the same type and name. This should help us in documenting our configuration in a way that doesn't confuse people. There is still lots of API work to go.
* Improve top-level arti-client documentation, add example codeeta2021-10-281-1/+1
| | | | | | | | | | | | | | | | | | | | | This overhauls the top-level `arti-client` documentation significantly: - the "Using arti-client" section walks the user through all of the necessary steps to initiate a Torified TCP connection, and then provides a code example - this example is also available as `examples/readme.rs`; it's not run as a doctest, since it involves connecting to Tor - a "More advanced usage" subheading provides information about stream isolation (and can potentially be used for other interesting features once we get them). - a new "Multiple runtime support" section was added to explain the purpose and usage of the `tor-rtcompat` crate - the section on design and privacy considerations was removed; this is probably okay to keep in a README, but users of the crate aren't going to be interested in this (at least I don't think) (also, the doc comment for `arti_client::Error` was fixed to make actual sense)
* TorClient::resolve_ptr should take an IpAddr.Nick Mathewson2021-10-261-6/+0
|
* Rename tor_client/arti_tor_client to arti_client.Nick Mathewson2021-10-211-0/+71
Solves a name conflict with the existing tor_client create. Closes #130.