summaryrefslogtreecommitdiff
path: root/crates/tor-dirmgr/src/err.rs
Commit message (Collapse)AuthorAgeFilesLines
* Fix typosSamanta Navarro2022-04-201-1/+1
| | | | Typos found with codespell.
* Treat expired/not-yet-valid directory objects as Errors.Nick Mathewson2022-04-051-1/+6
| | | | | | | | | | | | | Doing this will make us treat caches that send us these objects as not-working, and close circuits to them instead of trying over and over. The case where we add a document from the cache requires special handling: it isn't actually a error to find an expired document in our cache (unless the passage of time itself is erroneous, which is a debatable proposition at best). Fixes #431.
* Expand some comments based on review from @diziet.Nick Mathewson2022-03-211-0/+6
|
* dirmgr: Note errors and inform the circmgr about them.Nick Mathewson2022-03-211-0/+41
| | | | | | Some error types indicate that the guard has failed as a dircache. We should treat these errors as signs to close the circuit, and to mark the guard as having failed.
* Provide an error variant for external directory providersIan Jackson2022-03-041-0/+12
|
* Rename TorConnectionFailed to TorAccessFailedNick Mathewson2022-02-221-1/+1
|
* Rename TorShuttingDown to ArtiShuttingDownNick Mathewson2022-02-221-1/+1
|
* Use TorConnectionFailed for failure to download directory.Nick Mathewson2022-02-171-1/+1
|
* tor-dirmgr: Use Bug type for sqlite-detected bugsIan Jackson2022-02-171-1/+9
| | | | So we get a stack trace
* tor-dirmgr: Make sqlite_error_kind take rusqlite::ErrorIan Jackson2022-02-171-32/+34
| | | | | We're about to reuse this and we'll want it to take the higher-level type. Also it seems more proper like this.
* dirmgr: Remember where netdocs came from.Nick Mathewson2022-02-161-3/+20
| | | | | This isn't complete (see TODO), but it's enough to let us report the right ErrorKind if something fails to parse.
* dirmgr: eliminate StringParsingError.Nick Mathewson2022-02-161-23/+13
| | | | | | | | It had too many possible Kinds depending on what kind of string had failed to parse. I decided to use #[source] here instead of #[from], so that we would have to explicitly convert these errors where they show up.
* dirmgr: HasKind for internal and sqlite errorsNick Mathewson2022-02-161-11/+51
| | | | | At first I had thought that all sqlite errors would be internal, but that's not the case.
* dirmgr: implement HasKind for the easier variantsNick Mathewson2022-02-161-9/+30
|
* Allow creating unbootstrapped `TorClient`s (and `DirMgr`s)eta2022-02-111-0/+3
| | | | | | | | | | | | | | | This commit changes how the `TorClient` type works, enabling it to be constructed synchronously without initiating the bootstrapping process. Daemon tasks are still started on construction (although some of them won't do anything if the client isn't bootstrapped). The old bootstrap() methods are now reimplemented in terms of the new create_unbootstrapped() and bootstrap_existing() methods. This required refactoring how the `DirMgr` works to enable the same sort of thing there. closes #293
* Make SpawnError wrappers contain a 'spawning' stringNick Mathewson2022-02-041-5/+15
| | | | | (By our convention, these errors should say what we were trying to spawn when the error occurred.)
* Make TorError implement Clone.Nick Mathewson2022-02-041-4/+22
| | | | | This patch makes only minimal changes in lower-level error types: we have more refactoring to do.
* spawn errors: Fix tor-dirmgrIan Jackson2022-02-041-3/+10
|
* Fix some typos in comments.Nick Mathewson2021-10-191-1/+1
| | | | Also, tell the "typos" tool to ignore Cargo.lock.
* Remove anyhow dependency from tor-dirmgr.Jani Monoses2021-10-181-0/+48
|
* Move all crates into a `crates` subdirectory.Nick Mathewson2021-08-271-0/+51
This will cause some pain for now, but now is really the best time to do this kind of thing.