summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Once more exclude arti-bench from coverage.Nick Mathewson2022-01-271-0/+1
| | | | | | | | | | | | | | | This was added in !210; looks like it got removed by mistake with !221.
* | | with_coverage.sh: split grcov options into separate lines.Nick Mathewson2022-01-271-4/+12
| |/ |/| | | | | | | This makes it easier to see when they're changing, and will make future patches easier to review.
* | Merge branch 'rtcompat-refactor' into 'main'eta2022-01-2739-385/+561
|\ \ | |/ |/| | | | | | | | | Refactor the tor-rtcompat API. Closes #301 and #300 See merge request tpo/core/arti!263
| * Document why {current,create}_runtime are type-erasedNick Mathewson2022-01-271-9/+19
| |
| * Apply @eta's suggestions from review on !263eta2022-01-272-2/+2
| | | | | | Comment-only.
| * CI: Fix async-std taskNick Mathewson2022-01-261-2/+3
| | | | | | | | | | | | | | | | | | Previously it didn't enable any TLS provider, since we made native-tls optional a few commits ago. Now it enables rustls, so that rustls also gets a quick check along with async-std. I've also switched this test to use "cargo clippy" in place of "cargo test" because it's a strict superset.
| * Fix documentation references for tor-rtcompat refactoring.Nick Mathewson2022-01-263-14/+18
| |
| * arti: be more careful to use the user-selected runtimeNick Mathewson2022-01-263-5/+14
| |
| * Rename `SpawnBlocking` trait to `BlockOn`.Nick Mathewson2022-01-2611-21/+21
| | | | | | | | | | This avoids a future confusion with the new `SpawnBlocking` trait in async_executors v0.5, and better describes what the trait provides.
| * Make test_with_all_runtimes cover _all_ the runtimes.Nick Mathewson2022-01-266-84/+138
| | | | | | | | | | | | | | | | | | | | | | This took some refactoring, so that I wouldn't need to define 9 different versions of the function. It also required that we change the behavior of test_with_all_runtimes slightly, so that it asserts on _any_ failure rather than asserting on most but returning Err() for others. That in turn required changes to a few of its callers. There's probably a better way to do all of this macro business, but this is the best I could find.
| * Make the native-tls crate optional.Nick Mathewson2022-01-2621-45/+143
| | | | | | | | | | | | | | | | | | | | | | This commit puts the native-tls crate behind a feature. The feature is off-by-default in the tor-rtcompat crate, but can be enabled either from arti or arti-client. There is an included script that I used to test that tor-rtcompat could build and run its tests with all subsets of its features. Closes #300
| * Define aliases for "the best enabled runtime".Nick Mathewson2022-01-264-23/+45
| | | | | | | | | | This helps us simplify our code in a few ways, and will help even more once native_tls is optional.
| * Make current/create functions into runtime member functions.Nick Mathewson2022-01-269-104/+127
| | | | | | | | | | This should help avoid some amount of temptation towards API proliferation.
| * Rename FooRuntime to FooNativeTlsRuntime for consistency.Nick Mathewson2022-01-265-23/+25
| |
| * Limit the inner types in tor-rtcompat that have to implement CloneNick Mathewson2022-01-263-33/+10
| | | | | | | | | | If we implement our own clone on CompoundRuntime, we no longer need Clone implementations on our TlsProvider implementations.
| * Remove no-longer-needed tokio runtime helper macroNick Mathewson2022-01-261-27/+18
| |
| * Unify TokioRuntime and TokioRuntimeHandleNick Mathewson2022-01-264-66/+54
| | | | | | | | | | | | | | | | | | Having separate types here doesn't justify the (very limited) benefit of distinguishing between the case where we have created an executor that we own and the case where we have a handle to an already-running tokio executor. Part of #301.
| * Remove a now-incorrect comment in tor-proto.Nick Mathewson2022-01-261-3/+0
| |
| * Remove misspellings of "rusttls".Nick Mathewson2022-01-261-2/+2
| |
* | Merge branch 'coverage-tracking' into 'main'eta2022-01-273-10/+49
|\ \ | | | | | | | | | | | | | | | | | | Add test coverage tracking with CI/CD Closes #250 See merge request tpo/core/arti!221
| * | Install bs4 in coverage jobArturo Marquez2022-01-261-0/+2
| | |
| * | Use `maint/with_coverage.sh` in coverage jobArturo Marquez2022-01-261-5/+6
| | |
| * | Add changes in `maint`Arturo Marquez2022-01-262-10/+24
| | | | | | | | | | | | Follows up on changes from https://gitlab.torproject.org/trinity-1686a/arti/-/merge_requests/2/diffs#bc2cc73a8917fa6fed183148df69119665eb4e55
| * | Remove lcov from coverage jobArturo Marquez2022-01-071-3/+0
| | |
| * | Change output type to `cobertura`Arturo Marquez2022-01-071-8/+4
| | |
| * | Use python3.9 in coverage jobArturo Marquez2022-01-061-1/+1
| | |
| * | Add pip3 show to coverage jobArturo Marquez2022-01-061-0/+1
| | |
| * | Add pip3 to coverage jobArturo Marquez2022-01-061-1/+2
| | |
| * | Remove build in coverage jobArturo Marquez2022-01-061-1/+0
| | |
| * | Use stable image and download nightly in coverageArturo Marquez2022-01-061-1/+3
| | | | | | | | | | | | | | | Following suggestion here: `https://gitlab.torproject.org/tpo/core/arti/-/issues/250#note_2764010`
| * | Add cargo build to coverage jobArturo Marquez2022-01-061-0/+1
| | |
| * | Change targetArturo Marquez2022-01-061-3/+3
| | |
| * | Add `coverage` jobArturo Marquez2022-01-061-0/+25
| | | | | | | | | | | | | | | | | | Following instructions at: `https://www.collabora.com/news-and-blog/blog/2021/03/24/rust-integrating-llvm-source-base-code-coverage-with-gitlab/`
* | | Merge branch 'config' into 'main'eta2022-01-261-0/+122
|\ \ \ | |_|/ |/| | | | | | | | doc/CONFIG-NOTES.md: config proposal See merge request tpo/core/arti!248
| * | CONFIG-NOTES: finish a sentenceIan Jackson2022-01-201-1/+1
| | |
| * | CONFIG-NOTES: Suggestions from MR revieweta2022-01-201-2/+2
| | |
| * | doc/CONFIG-NOTES.md: config proposalIan Jackson2022-01-191-0/+122
| | |
* | | Merge branch 'rustls_v2' into 'main'Nick Mathewson2022-01-2513-253/+859
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | tor-rtcompat: Add support for a rustls backend Closes #86 See merge request tpo/core/arti!260
| * | | More comments on the limitations of tor-rtcompat's TLS APINick Mathewson2022-01-252-3/+29
| | | | | | | | | | | | | | | | | | | | Also, more comments on why these limitations are safe within the context of Tor, but you wouldn't want to use them elsewhere.
| * | | Comment-only: document sni_hostname more.Nick Mathewson2022-01-251-3/+5
| | | | | | | | | | | | | | | | | | | | Previously we expected the reader to automatically know why it was called "SNI", which really isn't fair.
| * | | Refactor native_tls usage into its own moduleNick Mathewson2022-01-258-241/+130
| | | | | | | | | | | | | | | | | | | | This change uses the async-native-tls crate for everything, and deletes some duplicated code.
| * | | tor-rtcompat: Add support for rustls.Nick Mathewson2022-01-259-9/+539
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is based on @janimo's approach in !74, but diverges in a few important ways. 1. It assumes that something like !251 will merge, so that we can have separate implementations for native_tls and rustls compiled at the same time. 2. It assumes that we can implement this for the futures::io traits only with no real penalty. 3. It uses the `x509-signature` crate to work around the pickiness of the `webpki` crate. If webpki eventually solves their [bug 219](https://github.com/briansmith/webpki/issues/219), we can remove a lot of that workaround. Closes #86.
| * | | Add a C program to make Tor-style X509 link certificatesNick Mathewson2022-01-241-0/+159
|/ / / | | | | | | | | | | | | We should never use this for anything but making the testing certificates we use for making sure our TLS implementation works.
* | | Merge branch 'ticket_277' into 'main'eta2022-01-243-4/+47
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | More documentation about refining build process and getting help Closes #277 See merge request tpo/core/arti!259
| * | | README,CONTRIBUTING: More links.Nick Mathewson2022-01-212-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Explain how to report bugs and how get accounts on the bugtracker; add link to the troubleshooting document. Part of #277
| * | | TROUBLESHOOTING.md: More information+links about build process.Nick Mathewson2022-01-211-1/+28
| | | | | | | | | | | | | | | | Part of #277
* | | | Merge branch 'error-plan' into 'main'eta2022-01-241-0/+230
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Error plan See merge request tpo/core/arti!257
| * | | | Error plan: typos/fixeseta2022-01-211-3/+3
| | | | |
| * | | | Errors: fold in people's views so is mostly unattributed nowIan Jackson2022-01-201-15/+28
| | | | |
| * | | | Errors: sort out markdown formattingIan Jackson2022-01-201-16/+30
| | | | |