| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | | | Handle panics from circuit construction. | Nick Mathewson | 2022-02-18 | 2 | -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 function | Nick Mathewson | 2022-02-18 | 1 | -47/+55 | |
| | | |/ | |/| | | | | | | | This reduces our nesting, and will help us handle panics. | |||||
| * | | | Merge branch 'proxy-sooner' into 'main' | eta | 2022-02-18 | 1 | -10/+16 | |
| |\ \ \ | | | | | | | | | | | | | | | | | arti cli: socks proxy: Start listening immedately See merge request tpo/core/arti!333 | |||||
| | * | | | arti cli: Add some anyhow context() calls | Ian Jackson | 2022-02-18 | 1 | -5/+8 | |
| | | | | | ||||||
| | * | | | arti cli: socks proxy: Start listening immedately | Ian Jackson | 2022-02-18 | 1 | -4/+7 | |
| | | | | | | | | | | | | | | | | | This makes arti less awkward to use. | |||||
| | * | | | arti cli: Do config watch setup before entering future select | Ian Jackson | 2022-02-18 | 1 | -3/+3 | |
| | |/ / | | | | | | | | | | IMO this clarifies things a bit, and makes things more deterministic. | |||||
| * / / | Fix typos | Dimitris Apostolou | 2022-02-18 | 1 | -2/+2 | |
| |/ / | ||||||
| * | | Merge branch 'script-filenames' into 'main' | eta | 2022-02-18 | 1 | -0/+0 | |
| |\ \ | |/ |/| | | | | | Remove extension from scripts See merge request tpo/core/arti!328 | |||||
| | * | rename *.py scripts to bare name | Ian Jackson | 2022-02-18 | 1 | -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 Jackson | 2022-02-18 | 3 | -9/+18 | |
| |\ \ | |/ |/| | | | | | | | | | dirclient: Remove HttpStatus error variant Closes #349 See merge request tpo/core/arti!329 | |||||
| | * | dirclient: Remove HttpStatus error variant | Nick Mathewson | 2022-02-17 | 3 | -9/+18 | |
| | | | | | | | | | | | | | | | Getting a non-200 status is no longer a failure condition; it's just a different kind of answer. Closes #349. | |||||
| * | | spelling fix | Nick Mathewson | 2022-02-17 | 1 | -1/+1 | |
| | | | ||||||
| * | | Add #[display] annotations for remaining ErrorKinds. | Nick Mathewson | 2022-02-17 | 1 | -0/+2 | |
| |/ | ||||||
| * | Merge branch 'remaining-errors' | Nick Mathewson | 2022-02-17 | 18 | -153/+508 | |
| |\ | ||||||
| | * | Use TorConnectionFailed for failure to download directory. | Nick Mathewson | 2022-02-17 | 2 | -9/+1 | |
| | | | ||||||
| | * | Clarify state vs cache in ErrorKind | Nick Mathewson | 2022-02-17 | 1 | -4/+20 | |
| | | | ||||||
| | * | Correct ErrorKinds for some tor-dirclient errors. | Nick Mathewson | 2022-02-17 | 2 | -2/+10 | |
| | | | ||||||
| | * | Rename CircuitTimeout to TorNetworkTimeout. | Nick Mathewson | 2022-02-17 | 2 | -6/+7 | |
| | | | ||||||
| | * | Rename ExitTimeout to RemoteNetworkTimeout. | Nick Mathewson | 2022-02-17 | 4 | -4/+4 | |
| | | | ||||||
| | * | tor_circmgr::Error: Sort variants by interesting-ness. | Nick Mathewson | 2022-02-17 | 1 | -37/+37 | |
| | | | | | | | | | We can't use discriminants here now, but maybe we can in the future. | |||||
| | * | Tweak documentation on ErrorKind::Transient | Nick Mathewson | 2022-02-17 | 1 | -5/+4 | |
| | | | ||||||
| | * | tor-dirmgr: Use Bug type for sqlite-detected bugs | Ian Jackson | 2022-02-17 | 1 | -1/+9 | |
| | | | | | | | | | So we get a stack trace | |||||
| | * | tor-dirmgr: Make sqlite_error_kind take rusqlite::Error | Ian Jackson | 2022-02-17 | 1 | -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 guidelines | Ian Jackson | 2022-02-17 | 1 | -0/+32 | |
| | | | ||||||
| | * | tor-dirclient: Error::HttpError: add a TODO saying to abolish | Ian Jackson | 2022-02-17 | 1 | -0/+4 | |
| | | | ||||||
| | * | ErrorKind::RemoteRefused: Expand on description, narrowing scope | Ian Jackson | 2022-02-17 | 1 | -0/+3 | |
| | | | ||||||
| | * | ErrorKind::Csnceled: Expand on description | Ian Jackson | 2022-02-17 | 1 | -0/+3 | |
| | | | ||||||
| | * | ErrorKind::CircuitTimeout: Expand on description | Ian Jackson | 2022-02-17 | 1 | -1/+2 | |
| | | | ||||||
| | * | ErrorKind::DirectoryExpired: Add possible deprecation notes | Ian Jackson | 2022-02-17 | 1 | -0/+6 | |
| | | | ||||||
| | * | tor-circmgr: errors: Use autoconversion for Bug | Ian Jackson | 2022-02-17 | 1 | -2/+2 | |
| | | | ||||||
| | * | tor_error: a couple of spelling/formatting issues | Nick Mathewson | 2022-02-16 | 1 | -4/+4 | |
| | | | ||||||
| | * | Finally remove ErrorKind::TODO. | Nick Mathewson | 2022-02-16 | 1 | -8/+0 | |
| | | | | | | | | | Closes #322. | |||||
| | * | arti_client: provide Kinds for all errors. | Nick Mathewson | 2022-02-16 | 2 | -1/+26 | |
| | | | ||||||
| | * | dirmgr: Remember where netdocs came from. | Nick Mathewson | 2022-02-16 | 5 | -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 Mathewson | 2022-02-16 | 4 | -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 errors | Nick Mathewson | 2022-02-16 | 2 | -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 variants | Nick Mathewson | 2022-02-16 | 2 | -10/+61 | |
| | | | ||||||
| | * | Implement HasKind for tor_dirclient::Error | Nick Mathewson | 2022-02-16 | 2 | -0/+25 | |
| | | | ||||||
| | * | dirclient: remove an unused error type. | Nick Mathewson | 2022-02-16 | 1 | -4/+0 | |
| | | | ||||||
| | * | Clarify and rename PendingCanceled | Nick Mathewson | 2022-02-16 | 2 | -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 Mathewson | 2022-02-16 | 1 | -3/+26 | |
| | | | | | | | | | (Instead of reporting the _last_ error, report the _worst_ error.) | |||||
| | * | circmgr: Add a Kind for speculative guard failure. | Nick Mathewson | 2022-02-16 | 2 | -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 Mathewson | 2022-02-16 | 7 | -35/+104 | |
| | | | | | | | | | There are a couple of tricky ones I'll do separately. | |||||
| | * | circmgr: Port InternalError to use Bug. | Nick Mathewson | 2022-02-16 | 3 | -6/+12 | |
| | | | ||||||
| * | | Fix compilation on main | Nick Mathewson | 2022-02-17 | 1 | -1/+2 | |
| | | | ||||||
| * | | Merge branch 'clippy-followup' into 'main' | Nick Mathewson | 2022-02-17 | 2 | -3/+4 | |
| |\ \ | | | | | | | | | | | | | Remove some needless refs and slicing See merge request tpo/core/arti!327 | |||||
| | * | | Avoid recursive From impls | Ian Jackson | 2022-02-17 | 2 | -3/+3 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | These (&foo).into() constructions are needed so we use the implemnetation of `From<&Foo>`, not a recursive call to this very function. This is a partial revert of the previous commit. I'm making this a separate commit for the benefit of posterity. | |||||
| | * | | Remove some needless refs and slicing | Ian Jackson | 2022-02-17 | 3 | -6/+6 | |
| | | | | | | | | | | | | | | | | Prompted by nightly's clippy (which has some false positives, so is currently disabled). | |||||
| | * | | Add a comment about "&mut [&mut ]" | Ian Jackson | 2022-02-17 | 1 | -0/+1 | |
| | | | | ||||||
| * | | | Merge branch 'issue-325' into 'main' | eta | 2022-02-17 | 2 | -26/+84 | |
| |\ \ \ | | | | | | | | | | | | | | | | | Make CircMap open_ent_count O(1) See merge request tpo/core/arti!302 | |||||
