summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Merge remote-tracking branch 'origin/mr/156'Nick Mathewson2021-11-301-2/+5
|\ \ \
| * | | arti-client: Reject Port 0 when parsing address:port combosNeel Chauhan2021-11-291-2/+5
| | | |
* | | | Merge remote-tracking branch 'origin/mr/154'Nick Mathewson2021-11-305-32/+481
|\ \ \ \
| * | | | Add tests & address review commentaryeta2021-11-304-34/+269
| | | | |
| * | | | Actually build preemptive circuits (and minor fixes)eta2021-11-294-1/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new CircMgr::build_circuits_preemptively function actually causes preemptive circuits to be built; it gets called from arti-client, like the other daemon tasks the CircMgr has.
| * | | | Introduce PreemptiveCircuitPredictor and TargetCircUsage::Preemptiveeta2021-11-234-26/+167
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In preparation for making Arti build circuits preemptively, this commit introduces `TargetCircUsage::Preemptive`, a circuit usage that works somewhat differently from other ones: it requires at least 2 circuits to exist that can exit the port it contains in order for an existing circuit to match against it (path-spec.txt § 2.1.1); if that's not the case, that usage will require building new circuits (in order that we build enough to have 2 available). This required refactoring how circuit reuse worked; now, `CircList::find_open` uses the new `AbstractSpec::find_supported` trait method, which we customize to implement the above check in the case of `Preemptive` circuit usages. To make that work, `OpenEntry` now takes two type parameters (the spec and circuit types), instead of taking a builder type parameter and using its associated types. (We also got rid of type constraints on that struct, yay!) A WIP implementation of a preemptive circuit predictor that implements path-spec.txt § 2.1.1 is also included, but this will require additional effort to wire it up with the `CircMgr` properly.
* | | | | Add comments about the absence of tap_key in microdesc.Nick Mathewson2021-11-301-1/+4
| | | | |
* | | | | Merge remote-tracking branch 'origin/mr/151'Nick Mathewson2021-11-303-57/+4
|\ \ \ \ \
| * | | | | Parse RSA public keyNeel Chauhan2021-11-292-5/+9
| | | | | |
| * | | | | Remove unused tap_onion_key and tap_keyNeel Chauhan2021-11-284-64/+7
| | | | | |
* | | | | | Merge remote-tracking branch 'origin/mr/160'Nick Mathewson2021-11-301-17/+53
|\ \ \ \ \ \
| * | | | | | add constructorsdagon2021-11-301-17/+53
| | |_|_|/ / | |/| | | |
* | | | | | Merge remote-tracking branch 'origin/mr/159'Nick Mathewson2021-11-301-13/+51
|\ \ \ \ \ \
| * | | | | | remember utf8 checkdagon2021-11-301-13/+51
| |/ / / / /
* | | | | | Merge branch 'readme_fixes'Nick Mathewson2021-11-3011-43/+76
|\ \ \ \ \ \
| * | | | | | Example needs to be the same as the readmedagon2021-11-304-74/+60
| | | | | | |
| * | | | | | MR review feedbackdagon2021-11-303-22/+23
| | | | | | |
| * | | | | | fix arti-client doc exampledagon2021-11-301-25/+39
| | | | | | |
| * | | | | | fix example for retry-errordagon2021-11-301-2/+15
| | | | | | |
| * | | | | | run ./maint/readmes.shdagon2021-11-298-17/+36
| | |/ / / / | |/| | | |
* | | | | | Fix a documentation link.Nick Mathewson2021-11-301-2/+3
| |/ / / / |/| | | |
* | | | | Fix a bad rustdoc reference.Nick Mathewson2021-11-291-1/+1
| | | | |
* | | | | Merge branch 'simplify_config_helpers' into 'main'eta2021-11-296-41/+34
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Change sane_defaults() and with_directories() See merge request tpo/core/arti!155
| * | | | | Change sane_defaults() and with_directories()Nick Mathewson2021-11-296-41/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sane_defaults() call is now the same as you get from a default builder: by convention, we just call that method Default::default(). The with_directories() constructor makes more sense as a constructor for the TorClientConfigBuilder than for TorClientConfig.
* | | | | | Bump every crate by one patch version.Nick Mathewson2021-11-2928-135/+135
| | | | | |
* | | | | | Run "cargo update" to get latest versions.Nick Mathewson2021-11-292-0/+3
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also fix a couple of warnings introduced by now-unneeded imports with new ed25519 crate. This is part of the process for releasing our next version.
* | | | | Merge branch 'config-updates-and-tests'Nick Mathewson2021-11-297-45/+387
|\ \ \ \ \ | |_|_|/ / |/| | | |
| * | | | Document StorageConfig defaults better.Nick Mathewson2021-11-292-11/+28
| | | | | | | | | | | | | | | | | | | | (Also fix a couple of typos)
| * | | | Add basic tests for high-level buildersNick Mathewson2021-11-254-4/+111
| | | | | | | | | | | | | | | | | | | | | | | | | Make sure that we can change elements, and we can reconstruct builders that give us the same thing.
| * | | | Implement builder patterns for ArtiConfig.Nick Mathewson2021-11-252-6/+181
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit implements the "metabuilder" pattern and the "builder reconstruction" pattern for the ArtiConfig type. I'm not 100% that this will be necessary, but it will certainly help with testing.
| * | | | Resolve some warnings in tor-config testNick Mathewson2021-11-251-0/+4
| | | | |
| * | | | Impl and test Default for high-level configsNick Mathewson2021-11-252-3/+42
| | | | |
| * | | | Ensure that all config sections have deny_unknown_fieldsNick Mathewson2021-11-252-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | When we deserialize a configuration, we should reject unknown variables (except when we have an explicit reason to allow them).
| * | | | Make directory accessors crate-private.Nick Mathewson2021-11-251-4/+2
| | | | | | | | | | | | | | | | | | | | These don't need to be exposed any longer.
| * | | | Define defaults for StorageConfigNick Mathewson2021-11-251-19/+18
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm still not 100% sure this is the right move: should we encourage app developers to always pick their own directories? Or should we make it easy for them to use, well, `sane_defaults`? This patch takes the second approach.
* | | | Mark a test as #[ignore]Nick Mathewson2021-11-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This test seems unreliable on CI: we've got to disable them for now so that we have a working CI system. The CI failure is #238; the ticket to repair them is #244.
* | | | Merge remote-tracking branch 'origin/mr/149'Nick Mathewson2021-11-292-23/+0
|\ \ \ \
| * | | | Remove address from VoterInfoBuilderNeel Chauhan2021-11-281-12/+0
| | | | |
| * | | | Remove unused 'address' field from DirSource structNeel Chauhan2021-11-282-11/+0
| |/ / /
* | | | Merge remote-tracking branch 'origin/mr/148'Nick Mathewson2021-11-291-10/+2
|\ \ \ \
| * | | | In struct PendingEntry, remove circ_specNeel Chauhan2021-11-281-10/+2
| |/ / /
* | | | tor-circmgr: Write a test for BadExit support.Neel Chauhan2021-11-291-6/+20
| | | |
* | | | add semicolons if nothing returnedDaniel Eades2021-11-2560-108/+136
| | | |
* | | | deglob some enums, use concise iteration syntaxDaniel Eades2021-11-2515-80/+68
|/ / /
* | | Resolve a pair of rustdoc warnings.Nick Mathewson2021-11-242-2/+4
| | |
* | | More typo fixes that I forgot to save :(Nick Mathewson2021-11-2411-16/+16
| | |
* | | Fix a clippy issue on nightlyNick Mathewson2021-11-241-0/+1
| | |
* | | Fix a few typos.Nick Mathewson2021-11-2415-22/+22
| | | | | | | | | | | | Also fix some commonwealth spellings that had slipped in.
* | | More tests for tor-config.Nick Mathewson2021-11-242-2/+71
| | |
* | | Remove a couple more eprintln! calls.Nick Mathewson2021-11-232-2/+1
| | |