summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | Add missing docs for report_and_exitIan Jackson2022-02-181-0/+3
| | | | |
| * | | | Add a missing anyhow context() callIan Jackson2022-02-181-2/+2
| | | | |
| * | | | Provide error reporter and use it in the arti binaryIan Jackson2022-02-184-1/+49
| | | | |
* | | | | Merge branch 'pending_error' into 'main'Ian Jackson2022-02-222-47/+65
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | Handle panics from circuit construction Closes #347 See merge request tpo/core/arti!336
| * | | | Handle panics from circuit construction.Nick Mathewson2022-02-182-3/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We handle them by reporting them to task that's waiting for the circuit, then relaying the panic. Doing so allows the waiting task to distinguish panics (EK::Internal) from cases where the reactor dropped the task entirely (EK::ReactorShuttingDown). And doing _that_ removes one case of EK::Canceled, which helps us on our goals towards #348. Closes #347.
| * | | | Move the main body of our circuit-launching task into a new functionNick Mathewson2022-02-181-47/+55
| | |/ / | |/| | | | | | | | | | This reduces our nesting, and will help us handle panics.
* | | | Merge branch 'proxy-sooner' into 'main'eta2022-02-181-10/+16
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | arti cli: socks proxy: Start listening immedately See merge request tpo/core/arti!333
| * | | | arti cli: Add some anyhow context() callsIan Jackson2022-02-181-5/+8
| | | | |
| * | | | arti cli: socks proxy: Start listening immedatelyIan Jackson2022-02-181-4/+7
| | | | | | | | | | | | | | | | | | | | This makes arti less awkward to use.
| * | | | arti cli: Do config watch setup before entering future selectIan Jackson2022-02-181-3/+3
| |/ / / | | | | | | | | | | | | IMO this clarifies things a bit, and makes things more deterministic.
* / / / Fix typosDimitris Apostolou2022-02-181-2/+2
|/ / /
* | | Merge branch 'script-filenames' into 'main'eta2022-02-181-0/+0
|\ \ \ | |/ / |/| | | | | | | | Remove extension from scripts See merge request tpo/core/arti!328
| * | rename *.py scripts to bare nameIan Jackson2022-02-181-0/+0
| | | | | | | | | | | | | | | | | | Update all references. There are three remaining hits for git-grep '\.py\b' all of which are scripts in "little-t-tor", not here in arti.
* | | Merge branch 'no-http-status-err' into 'main'Ian Jackson2022-02-183-9/+18
|\ \ \ | |/ / |/| | | | | | | | | | | | | | dirclient: Remove HttpStatus error variant Closes #349 See merge request tpo/core/arti!329
| * | dirclient: Remove HttpStatus error variantNick Mathewson2022-02-173-9/+18
| | | | | | | | | | | | | | | | | | | | | Getting a non-200 status is no longer a failure condition; it's just a different kind of answer. Closes #349.
* | | spelling fixNick Mathewson2022-02-171-1/+1
| | |
* | | Add #[display] annotations for remaining ErrorKinds.Nick Mathewson2022-02-171-0/+2
|/ /
* | Merge branch 'remaining-errors'Nick Mathewson2022-02-1718-153/+508
|\ \
| * | Use TorConnectionFailed for failure to download directory.Nick Mathewson2022-02-172-9/+1
| | |
| * | Clarify state vs cache in ErrorKindNick Mathewson2022-02-171-4/+20
| | |
| * | Correct ErrorKinds for some tor-dirclient errors.Nick Mathewson2022-02-172-2/+10
| | |
| * | Rename CircuitTimeout to TorNetworkTimeout.Nick Mathewson2022-02-172-6/+7
| | |
| * | Rename ExitTimeout to RemoteNetworkTimeout.Nick Mathewson2022-02-174-4/+4
| | |
| * | tor_circmgr::Error: Sort variants by interesting-ness.Nick Mathewson2022-02-171-37/+37
| | | | | | | | | | | | We can't use discriminants here now, but maybe we can in the future.
| * | Tweak documentation on ErrorKind::TransientNick Mathewson2022-02-171-5/+4
| | |
| * | 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.
| * | tor-error: splitting/lumping guidelinesIan Jackson2022-02-171-0/+32
| | |
| * | tor-dirclient: Error::HttpError: add a TODO saying to abolishIan Jackson2022-02-171-0/+4
| | |
| * | ErrorKind::RemoteRefused: Expand on description, narrowing scopeIan Jackson2022-02-171-0/+3
| | |
| * | ErrorKind::Csnceled: Expand on descriptionIan Jackson2022-02-171-0/+3
| | |
| * | ErrorKind::CircuitTimeout: Expand on descriptionIan Jackson2022-02-171-1/+2
| | |
| * | ErrorKind::DirectoryExpired: Add possible deprecation notesIan Jackson2022-02-171-0/+6
| | |
| * | tor-circmgr: errors: Use autoconversion for BugIan Jackson2022-02-171-2/+2
| | |
| * | tor_error: a couple of spelling/formatting issuesNick Mathewson2022-02-161-4/+4
| | |
| * | Finally remove ErrorKind::TODO.Nick Mathewson2022-02-161-8/+0
| | | | | | | | | | | | Closes #322.
| * | arti_client: provide Kinds for all errors.Nick Mathewson2022-02-162-1/+26
| | |
| * | dirmgr: Remember where netdocs came from.Nick Mathewson2022-02-165-16/+61
| | | | | | | | | | | | | | | 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-164-29/+23
| | | | | | | | | | | | | | | | | | | | | | | | 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-162-13/+54
| | | | | | | | | | | | | | | 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-162-10/+61
| | |
| * | Implement HasKind for tor_dirclient::ErrorNick Mathewson2022-02-162-0/+25
| | |
| * | dirclient: remove an unused error type.Nick Mathewson2022-02-161-4/+0
| | |
| * | Clarify and rename PendingCanceledNick Mathewson2022-02-162-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | From its old name, this error had implied that we were giving no useful information when we were waiting on a pending cirucit request that failed. In fact, this error would only happen if we dropped the `mpsc::Sender` for a circuit attempt without reporting success or failure.
| * | Provide a better ErrorKind from RetryError.Nick Mathewson2022-02-161-3/+26
| | | | | | | | | | | | (Instead of reporting the _last_ error, report the _worst_ error.)
| * | circmgr: Add a Kind for speculative guard failure.Nick Mathewson2022-02-162-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These errors should almost never be seen by the user; we should instead retry the circuit. But they _can_ be seen by the use if selecting a guard takes too long, or too many attempts. (Therefore, they aren't true "internal" errors.) I suspect that we might not want to keep this TransientFailure kind, but I'm not sure what else to do here for now.
| * | Add kinds for *most* circmgr errors.Nick Mathewson2022-02-167-35/+104
| | | | | | | | | | | | There are a couple of tricky ones I'll do separately.
| * | circmgr: Port InternalError to use Bug.Nick Mathewson2022-02-163-6/+12
| | |
* | | Fix compilation on mainNick Mathewson2022-02-171-1/+2
| | |
* | | Merge branch 'clippy-followup' into 'main'Nick Mathewson2022-02-172-3/+4
|\ \ \ | | | | | | | | | | | | | | | | Remove some needless refs and slicing See merge request tpo/core/arti!327