summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Merge branch 'cleanup-todos-circmgr' into 'main'Nick Mathewson2023-06-281-32/+23
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Resolve a few "TODO HS" items in circmgr. See merge request tpo/core/arti!1322
| * | | | circmgr: Refactor duplicate logic.Nick Mathewson2023-06-281-27/+21
| | | | | | | | | | | | | | | | | | | | | | | | | These two functions are only slightly different, and benefit from taking a Fn.
| * | | | circmgr: Remove a "TODO HS" about path restrictions.Nick Mathewson2023-06-281-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | I looked through the C tor source code and couldn't find any additional path restrictions.
| * | | | circmgr: Defer two "TODO HS" in hspoolNick Mathewson2023-06-281-2/+2
| | | | | | | | | | | | | | | | | | | | One of these is test-related; one is vanguards-related.
* | | | | Merge branch 'lifecycle_doc_tweaks' into 'main'Nick Mathewson2023-06-283-18/+65
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Documentation, mostly on channel and circuit lifecycles See merge request tpo/core/arti!1318
| * | | | | ChanMgr: Tweak documentation a bit.Nick Mathewson2023-06-281-9/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adjust formatting, add more references to lower-level APIs, and clarify lifetimes a little more.
| * | | | | proto: ClientCirc: remove now-obsolete note on Clone-nessNick Mathewson2023-06-281-5/+0
| | | | | |
| * | | | | proto: document ClientCirc lifecycle better.Nick Mathewson2023-06-281-0/+29
| | | | | |
| * | | | | proto: document channel lifecycle better.Nick Mathewson2023-06-281-5/+24
| |/ / / /
* / / / / Remove spurious todo-hs items in tor-cert.Nick Mathewson2023-06-281-6/+0
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | I am not sure why we wrote these comments, but they are incorrect: I've investigated the C code and found only 3 key types. The "unimplemented" types that the TODO comment here complains about are in fact certificate types.
* | | | Merge branch 'more-keymgr-todos' into 'main'Alexander Færøy2023-06-283-5/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | keymgr: Downgrade "TODO hs" to "TODO HSS". See merge request tpo/core/arti!1334
| * | | | keymgr: Downgrade "TODO hs" to "TODO HSS".Gabriela Moldovan2023-06-283-5/+5
| | |_|/ | |/| | | | | | | | | | | | | | These TODOs can be deferred for now: we're not declaring the keymgr APIs stable until we add support for hidden services.
* | | | tor-hsclient: Make RendPtIdentityForError use RelayIdsIan Jackson2023-06-281-6/+3
| | | | | | | | | | | | | | | | Since arti!1233 this is trivial.
* | | | tor-hsclient: Use RendPtIdentityForError in more placesIan Jackson2023-06-281-4/+4
|/ / / | | | | | | | | | | | | For some reason this wasn't used in the actual errors, although it *was* used in the types of the functions etc.
* | | Merge branch 'reuse' into 'main'Ian Jackson2023-06-281-1/+17
|\ \ \ | | | | | | | | | | | | | | | | tor-hsclient: Discuss intro circuit extend-and-reuse See merge request tpo/core/arti!1298
| * | | tor-hsclient: Add a TODO SPEC re HS intro extend-and-reuseIan Jackson2023-06-231-0/+2
| | | |
| * | | tor-hsclient: Discuss intro circuit extend-and-reuseIan Jackson2023-06-231-1/+15
| | | | | | | | | | | | | | | | This is a summary of a discussion I had on IRC.
* | | | Merge branch 'keymgr-todos' into 'main'Alexander Færøy2023-06-283-10/+6
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | keymgr: Remove/downgrade a few "TODO hs" See merge request tpo/core/arti!1328
| * | | keymgr: Downgrade some TODOs to "TODO HSS".Gabriela Moldovan2023-06-282-6/+6
| | | | | | | | | | | | | | | | These don't need to be blockers for the next release.
| * | | keymgr: Remove outdated TODOs regarding error handling.Gabriela Moldovan2023-06-282-4/+0
| | | | | | | | | | | | | | | | These were tackled in #901.
* | | | Merge branch 'config' into 'main'Ian Jackson2023-06-2812-40/+205
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | tor-hsclient: Add configuration settings See merge request tpo/core/arti!1305
| * | | | HS timeout parameters: Restore some TODOsIan Jackson2023-06-281-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conceptually this is a fixup to HS configuration: Add retry parameters to configuration which erroneously removed these comments - they were intended to apply to *all* these parameters, not just the max attempts. Not marking it as fixup! because that would involve merge conflicts.
| * | | | HS configuration: Use configured maximum attempts - commentIan Jackson2023-06-281-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Explain why this fallback to MAX is good. Discussion https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1305#note_2915927
| * | | | HS configuration: Use configured maximum attempts (fmt)Ian Jackson2023-06-281-4/+12
| | | | |
| * | | | HS configuration: Use configured maximum attemptsIan Jackson2023-06-281-10/+9
| | | | |
| * | | | HS configuration: Plumb configuration through (fmt)Ian Jackson2023-06-283-11/+29
| | | | | | | | | | | | | | | | | | | | Apply deferred rustfmt churn.
| * | | | HS configuration: Plumb configuration through (clippy)Ian Jackson2023-06-282-5/+5
| | | | | | | | | | | | | | | | | | | | Apply deferred clippy churn.
| * | | | HS configuration: Plumb configuration throughIan Jackson2023-06-286-8/+68
| | | | | | | | | | | | | | | | | | | | | | | | | Invent a trait a la circmgr config for the hs client connector config. Plumb a suitable value all the way through to the code that will use it.
| * | | | HS configuration: Add retry parameters to configurationIan Jackson2023-06-285-4/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I think these should go in `[circuit_timing]`. That section already has some retry parameters, so is not strictly *timing*. This is not honoured yet.
| * | | | HS configuration: Add and honour `allow_onion_addrs` in configurationIan Jackson2023-06-285-10/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We put this in `[address_filter]`. The interaction with the corresponding stream preference is a bit complicated. We must turn the stream pref into a `BoolOrAuto`.
* | | | | Merge branch 'dirclient-semver-entry' into 'main'Nick Mathewson2023-06-281-0/+1
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | Missing semver entry for new dirclient API from !1323 See merge request tpo/core/arti!1327
| * | | | Missing semver entry for new dirclient API from !1323Nick Mathewson2023-06-281-0/+1
| |/ / /
* | | | Merge branch 'hsdir-identity' into 'main'Nick Mathewson2023-06-282-7/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | tor-hsclient: Completely hide hsdir identities in errors See merge request tpo/core/arti!1326
| * | | | tor-hsclient: Completely hide hsdir identities in errorsIan Jackson2023-06-282-7/+6
| |/ / /
* | | | art cfg tests: Fix garbled doc wordinggabi-2502023-06-281-2/+2
| | | |
* | | | arti cfg tests: Fix doc commentgabi-2502023-06-281-1/+1
| | | |
* | | | arti cfg tests: Overhaul exception handling (fmt)Ian Jackson2023-06-281-36/+32
| | | |
* | | | arti cfg tests: Overhaul exception handlingIan Jackson2023-06-282-92/+325
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was super confusing and fragile. Amongst the problems: * Information about exceptional config keys was spread across a number of places, manipulated in ad-hoc ways (conditional Vec appends, etc). * As a consequence, each exceptional table has confusing and unclear semantics. * It doesn't deal well with the way that cargo sometimes enables features for dependency crates even if arti itself wouldn't demand them; this can lead to sub-crates supporting config keys when the tests in arti don't expect them to, causing spurious test failures. Fix this: * Introduce a new, systematic, way of writing information about configuration keys that need some kind of special handling. * Use this new approach in *both* sets of "thorough" config tests. * Be more relaxed about deprecated keys. We don't want to tightly couple this to absence in the supported file, I think. * Understand more clearly the concept of keys of which we don't know, in the current build config, whether the code is expected to accept them. I have tested this locally with: for p in '-p arti' '--workspace'; do for f in '--no-default-features --features=tokio,native-tls' '--all-features' ''; do nailing-cargo test $p $f; done; done
* | | | arti cfg tests: Remove a comment relating to work already doneIan Jackson2023-06-281-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | We *do* have a thing that works like this. It's fragile and confusing and that's what I'm about to fix.
* | | | arti cfg tests: Code motionIan Jackson2023-06-281-206/+214
| | | | | | | | | | | | | | | | | | | | Bring the exciting tests together, and move some more normal tests out of the middle.
* | | | geoip: conditionalise a testIan Jackson2023-06-281-0/+1
| | | | | | | | | | | | | | | | | | | | Without this, the build fails with cargo test --workspace --no-default-features --features=tokio,native-tls
* | | | Conditionalise an importIan Jackson2023-06-281-0/+1
| | | | | | | | | | | | | | | | | | | | Fixes a warning with cargo clippy --locked --offline --workspace --all-targets
* | | | Mark a builder as non-exhaustiveIan Jackson2023-06-281-0/+1
|/ / / | | | | | | | | | | | | | | | | | | If all the fields vanish, this generates a warning with cargo clippy --locked --offline --workspace --all-targets Fix that.
* | | Merge branch 'keymgr-error-kind' into 'main'gabi-2502023-06-284-4/+39
|\ \ \ | | | | | | | | | | | | | | | | keymgr: Implement ErrorKind for keymgr error types See merge request tpo/core/arti!1315
| * | | keymgr: Implement HasKind for ArtiNativeKeystoreError.Gabriela Moldovan2023-06-281-2/+7
| | | |
| * | | tor-error: Add KeystoreAccessFailed, KeystoreFsPermissions to ErrorKind.Gabriela Moldovan2023-06-282-1/+21
| | | |
| * | | keymgr: Implement HasKind for SshKeyError.Gabriela Moldovan2023-06-281-2/+1
| | | |
| * | | tor-error: Add KeystoreCorrupted to ErrorKind.Gabriela Moldovan2023-06-282-0/+11
| | | |
* | | | Merge branch 'dirclient-todos' into 'main'Alexander Færøy2023-06-283-9/+31
|\ \ \ \ | |/ / / |/| | | | | | | | | | | Resolve remaining dirclient HS todos See merge request tpo/core/arti!1323
| * | | dirclient: use correct default max_lenNick Mathewson2023-06-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Yes, it's 50 kilobytes, not 50 kibibytes. I double-checked this with the C implementation and with param-spec.txt's documentation for `HSV3MaxDescriptorSize`.