summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | arti-config: Small type and comment refactoring from review.Nick Mathewson2022-02-021-2/+0
| | | |
| * | | Detect changes in non-client configuration sections tooNick Mathewson2022-02-012-17/+30
| | | | | | | | | | | | | | | | We don't yet do much with these, but we can avoid discarding them.
| * | | Make configuration-watching configurable and off-by-default.Nick Mathewson2022-02-014-4/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm slightly concerned about whether this is behavior people would expect to have on-by-default, so let's make this off-by-default for now. Maybe the `application` and `system` sections should merge?
| * | | Reload configuration when our configuration files change.Nick Mathewson2022-02-015-49/+342
| | | | | | | | | | | | | | | | Closes #270
* | | | Merge branch 'eta/reactor-2.5' into 'main'eta2022-02-031-33/+60
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | Fix severe reactor ordering problems See merge request tpo/core/arti!282
| * | | Fix severe reactor ordering problemseta2022-02-031-33/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A number of severe problems with the circuit reactor were fixed which could cause reordering of cells (which causes relays to terminate the circuit with a protocol violation, as they become unable to decrypt them). These mostly revolve around improper usage of queues: - The code assumed that a failure to place cells onto the channel would persist for the duration of a reactor cycle run. However, under high contention, this wouldn't always be the case. - This leads to some cells getting enqueued while others go straight through, before the enqueued cells. - To fix this, we block sending cells out of the channel while there are still some enqueued. - The hop-specific queues queued after encryption, not before. This was very brittle, and led to frequent mis-ordering. - This was fixed by making them not do that. This is arti!264 / 5bce9db5628126be2b736f228211174fe4132918 without the refactor part.
* | | | Merge branch 'add-final-newline-force' into 'main'Nick Mathewson2022-02-035-3/+36
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Add editorconfig to force some rules (Final Newline) See merge request tpo/core/arti!289
| * | | | Add editorconfig to force some rules (Final Newline)Daniel Schischkin2022-02-035-3/+36
| | | | |
* | | | | Merge branch 'dirclient-testing' into 'main'Nick Mathewson2022-02-0313-45/+174
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | dir-client: bug fix and more tests See merge request tpo/core/arti!271
| * | | | | Explain a testing oddity in tor-dirclient.Nick Mathewson2022-02-031-1/+11
| | | | | |
| * | | | | Fix a stale comment in tor-dirclient.Nick Mathewson2022-02-031-2/+1
| | | | | |
| * | | | | Upgrade required version of futures crate to 0.3.14Nick Mathewson2022-02-0112-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Earlier versions have a bug in UnboundedReceiver that make our new dirclient tests fail.
| * | | | | dirclient: refactor and test "should-i-retire-the-circuit" code.Nick Mathewson2022-02-011-6/+13
| | | | | |
| * | | | | dirclient: Add tests for a number of failing cases.Nick Mathewson2022-02-011-25/+136
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These bring the case a tiny improvement in test coverage, and also manage to turn up a few bugs.
| * | | | | dirclient: don't return too-long responses on decompression failureNick Mathewson2022-02-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are a couple of places where we forgot to truncate our return-buffer to its actual size, and instead returned a big bunch of zeros. Found while writing the tests in the next commit. Someday, we'll have ReadBuf and won't have to worry about these things.
* | | | | | Merge branch 'typos' into 'main'eta2022-02-0311-20/+20
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix typos See merge request tpo/core/arti!285
| * | | | | | Fix typosDimitris Apostolou2022-02-0211-20/+20
| | |/ / / / | |/| | | |
* | | | | | Merge branch 'clippy-workaround' into 'main'Nick Mathewson2022-02-0211-2/+16
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Temporarily disable some clippy lints on nightly See merge request tpo/core/arti!287
| * | | | | | Temporarily disable some clippy lints on nightlyIan Jackson2022-02-0211-2/+16
|/ / / / / /
* | | | | | Merge branch 'clippy-fixes' into 'main'Nick Mathewson2022-02-028-12/+12
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | Minor improvements prompted by current nightly clippy See merge request tpo/core/arti!286
| * | | | | Untangle two needless Ok(r?) into just rIan Jackson2022-02-022-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prompted by clippy::needless_question_mark. Sometimes Ok(r?) is needed to do automatic error conversion. I assume the lint checks for that. Anyway, in these cases it's not needed.
| * | | | | Remove many needless borrows and slicesIan Jackson2022-02-025-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found via clippy::needless_borrow. In some cases I removed needless `[..]` too. See also: needless_borrow suggestion doesn't go far enough https://github.com/rust-lang/rust-clippy/issues/8389
| * | | | | clippy: Pass simply &output to fs::writeIan Jackson2022-02-021-1/+1
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | clippy::needless_borrow quibbles here, IMO correctly. Its suggestion didn't go far enough: output is a String and a &String can be passed to write as-is for identical effect.
* | | | | Merge branch 'reload-config-prep' into 'main'Ian Jackson2022-02-025-61/+108
|\ \ \ \ \ | |_|/ / / |/| | / / | | |/ / | |/| | Preparatory work for auto config reload See merge request tpo/core/arti!284
| * | | Un-Arc<> TorClient in the arti crateNick Mathewson2022-02-012-8/+5
| | | | | | | | | | | | | | | | | | | | TorClient doesn't need to be wrapped in an Arc any longer, thanks to other refactoring.
| * | | arti_config: Refactor configuration sources into a structNick Mathewson2022-02-013-52/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is by no means our final API, but should represent an improvement. Here instead of having to specify a list of files and their is-this-optional status, along with a list of command-line options, we have a single structure that encapsulates all of that information. Two advantages here: - Callers no longer have to remember what the boolean means. - We can "reload" more easily, by keeping the source object around. This change also implements the correct behavior for our default configuration file in `arti::main`: if the file is absent and the user doesn't list a config file, that's no problem. But if the user lists _that very same config file, we should insist that it be present.
| * | | Expose Reconfigure enum from arti-client.Nick Mathewson2022-02-011-1/+1
| | | | | | | | | | | | | | | | | | | | This enum is required to use `TorClient::reconfigure` correctly, and as such ought to be re-exported.
* | | | Merge branch 'eta/298' into 'main'Nick Mathewson2022-02-011-49/+86
|\ \ \ \ | |/ / / |/| | | | | | | | | | | arti-bench: summarize statistics with a new `Statistic` type (#298) See merge request tpo/core/arti!279
| * | | arti-bench: summarize statistics with a new `Statistic` type (#298)eta2022-02-011-49/+86
|/ / / | | | | | | | | | | | | | | | | | | | | | This implements the proposal from arti#298, making the `BenchmarkResults` type be made out of a bunch of new `Statistic` types (which summarize the mean, median, range, and standard deviation of an arbitrary value) instead of overloading `TimingSummary` for this purpose.
* | | Merge branch 'fix-invalid-windows-path' into 'main'Ian Jackson2022-02-012-2/+6
|\ \ \ | | | | | | | | | | | | | | | | Fix invalid path character on windows See merge request tpo/core/arti!277
| * | | Fix invalid path character on windowsMichael2022-01-312-2/+6
|/ / /
* | | Merge branch 'ci-rustup-show' into 'main'eta2022-01-311-0/+4
|\ \ \ | |/ / |/| | | | | | | | CI: Add "rustup show" to show compiler versions in logs See merge request tpo/core/arti!276
| * | CI: Add "rustup show" to show compiler versions in logsIan Jackson2022-01-311-0/+4
| | | | | | | | | | | | | | | | | | Trying to debug the nightly failure here https://gitlab.torproject.org/Diziet/arti/-/pipelines/25417 and I can't seem to repro it.
* | | Merge branch 'dedup-cobertura' into 'main'Nick Mathewson2022-01-314-3/+44
|\ \ \ | | | | | | | | | | | | | | | | add postprocessing script to deduplicate cobertura reports See merge request tpo/core/arti!272
| * | | add postprocessing script to deduplicate cobertura reportstrinity-1686a2022-01-284-3/+44
| | | |
* | | | Tweak release instructions based on 0.0.4 experienceNick Mathewson2022-01-311-0/+13
| | | |
* | | | Bump tor-netdir and tor-guardmgr versionsarti-v0.0.4Nick Mathewson2022-01-315-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-netdir needs to bump because tor-netdoc bumped, even though there were no other changes in tor-netdir. Whoops. tor-guardmgr needs to bump because it already published, with the older tor-netdir.
* | | | Bump the patch version of every crate that changed since 0.0.3Nick Mathewson2022-01-3116-81/+81
| | | |
* | | | Update changed_crates to be more useful.Nick Mathewson2022-01-311-2/+3
| | | |
* | | | Mention shellcheck patch in changelog.Nick Mathewson2022-01-311-2/+3
| | | |
* | | | Changelog for 0.0.4.Nick Mathewson2022-01-311-0/+105
| |/ / |/| |
* | | Merge branch 'shellcheck' into 'main'Ian Jackson2022-01-315-3/+14
|\ \ \ | | | | | | | | | | | | | | | | Add shellcheck to gitlab ci and git hook See merge request tpo/core/arti!275
| * | | maint/shellcheck_all.sh: add missing final newlineIan Jackson2022-01-311-1/+1
| | | |
| * | | Change which command to command -vDaniel Schischkin2022-01-291-2/+2
| | | |
| * | | Remove redundancy/code duplication and switch to shellcheck_all.sh scriptDaniel Schischkin2022-01-292-3/+3
| | | |
| * | | Add shellcheck script into maint directoryDaniel Schischkin2022-01-291-0/+3
| | | |
| * | | Undo remove document-private-items argDaniel Schischkin2022-01-281-1/+1
| | | |
| * | | Remove argument document-private-items from nightly buildDaniel Schischkin2022-01-281-1/+1
| | | |
| * | | Add missing file ending for downgrade_dependencies in gitlab ciDaniel Schischkin2022-01-281-1/+1
| | | |
| * | | Add shellcheck to pre-push git hookDaniel Schischkin2022-01-281-0/+2
| | | |