Commit Graph

7388 Commits

Author SHA1 Message Date
Nick Mathewson 6affb50c1a circmgr: Remove a "TODO HS" about path restrictions.
I looked through the C tor source code and couldn't find any
additional path restrictions.
2023-06-28 15:28:52 -04:00
Nick Mathewson d32ba9ed18 circmgr: Defer two "TODO HS" in hspool
One of these is test-related; one is vanguards-related.
2023-06-28 15:28:52 -04:00
Nick Mathewson 4ad1a5c6ac ChanMgr: Tweak documentation a bit.
Adjust formatting, add more references to lower-level APIs, and
clarify lifetimes a little more.
2023-06-28 15:26:22 -04:00
Nick Mathewson 2944d4f91f proto: ClientCirc: remove now-obsolete note on Clone-ness 2023-06-28 15:26:22 -04:00
Nick Mathewson 644c51173a proto: document ClientCirc lifecycle better. 2023-06-28 15:26:22 -04:00
Nick Mathewson e8e95ec03b proto: document channel lifecycle better. 2023-06-28 15:26:22 -04:00
Nick Mathewson 4003e032d6 Remove spurious todo-hs items in tor-cert.
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.
2023-06-28 15:18:13 -04:00
Ian Jackson 47b577d7a0 tor-netdoc: Placate clippy (fmt) 2023-06-28 18:57:06 +01:00
Ian Jackson 56813d9650 tor-netdoc: Placate clippy 2023-06-28 18:56:49 +01:00
Alexander Færøy f136e8ac41 Merge branch 'more-keymgr-todos' into 'main'
keymgr: Downgrade "TODO hs" to "TODO HSS".

See merge request tpo/core/arti!1334
2023-06-28 17:30:43 +00:00
Nick Mathewson 0b2c8f5e92 Merge branch 'relayids' into 'main'
tor-hsclient: Make RendPtIdentityForError use RelayIds

See merge request tpo/core/arti!1335
2023-06-28 16:26:22 +00:00
Ian Jackson 8f1a71850c tor-hsclient: Handle handshake completion error correctly 2023-06-28 17:14:45 +01:00
Ian Jackson 9216f628f1 tor-hsclient: Rename RendezvousCompletionCircuit from RendezvousCompletion
We need to handle errors during the handshake.  That also produces a
`tor_proto::Error` but we  want to print a different message for that,
so let's rename this before adding the new variant.
2023-06-28 17:14:26 +01:00
Ian Jackson 4eb3e3b6ec tor-hsclient: Move handling of Bug to new section
It was wrong where ti was.
2023-06-28 17:14:26 +01:00
Ian Jackson 18478b47a7 tor-hsclient: Make RendPtIdentityForError use RelayIds
Since arti!1233 this is trivial.
2023-06-28 16:49:49 +01:00
Ian Jackson 4d071d1c07 tor-hsclient: Use RendPtIdentityForError in more places
For some reason this wasn't used in the actual errors,
although it *was* used in the types of the functions etc.
2023-06-28 16:47:55 +01:00
Gabriela Moldovan 609e6ce7c7 keymgr: Downgrade "TODO hs" to "TODO HSS".
These TODOs can be deferred for now: we're not declaring the keymgr APIs
stable until we add support for hidden services.
2023-06-28 16:44:06 +01:00
Ian Jackson 8908d39872 tor-netdoc: Test hsdescs inners with a variety of IPT counts (fmt) 2023-06-28 16:29:05 +01:00
Ian Jackson de63a6092d tor-netdoc: Test hsdescs inners with a variety of IPT counts 2023-06-28 16:28:19 +01:00
Ian Jackson cf4adad96e tor-netdoc: hsdesc: Disregard intro points after the MAX'th 2023-06-28 16:28:11 +01:00
Ian Jackson 0e2f804d8f tor-netdoc: Reject hsdescs with no intro points
None of the existing NetdocErrorKinds seemed right.
2023-06-28 16:27:05 +01:00
Ian Jackson c95595227a tor-hscrypto: Provide values for NUM_INTRO_POINT
These are in the spec and tor-hsclient is about to want them.
2023-06-28 14:49:49 +01:00
Ian Jackson cbb8eb4fdd Merge branch 'reuse' into 'main'
tor-hsclient: Discuss intro circuit extend-and-reuse

See merge request tpo/core/arti!1298
2023-06-28 13:48:12 +00:00
Alexander Færøy ea3f93d0e2 Merge branch 'keymgr-todos' into 'main'
keymgr: Remove/downgrade a few "TODO hs"

See merge request tpo/core/arti!1328
2023-06-28 13:45:19 +00:00
Ian Jackson 68aacc2140 arti cfg tests: Suppress an undesriable clippy lint 2023-06-28 14:43:48 +01:00
Ian Jackson 464c5e5efa arti cfg tests: declare_exceptions: Annotate the types for clarity (fmt) 2023-06-28 14:25:55 +01:00
Ian Jackson 5f20b0ec29 arti cfg tests: declare_exceptions: Annotate the types for clarity 2023-06-28 14:25:55 +01:00
Ian Jackson 14b1cc0cc1 arti cfg tests: Point the reader to the types used in declarations 2023-06-28 14:25:55 +01:00
Ian Jackson 2ff494d081 arti cfg tests: Move InCode into declare_config_example
It's used for declarations only, and they should all be here.
2023-06-28 14:25:55 +01:00
Ian Jackson 5672b75de2 arti cfg tests: Make declare_exception take distinguished old/new types
As per discussion in
  https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1320#note_2916689
and IRC followup.
2023-06-28 14:23:13 +01:00
Ian Jackson 1be71b87d0 Merge branch 'config' into 'main'
tor-hsclient: Add configuration settings

See merge request tpo/core/arti!1305
2023-06-28 13:10:39 +00:00
Nick Mathewson e06cd63ffd Merge branch 'dirclient-semver-entry' into 'main'
Missing semver entry for new dirclient API from !1323

See merge request tpo/core/arti!1327
2023-06-28 12:58:19 +00:00
Ian Jackson cf5235a713 HS timeout parameters: Restore some TODOs
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.
2023-06-28 13:32:54 +01:00
Ian Jackson 11bb7e8a90 HS configuration: Use configured maximum attempts - comment
Explain why this fallback to MAX is good.

Discussion
  https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1305#note_2915927
2023-06-28 13:32:54 +01:00
Ian Jackson 2bfe12983a HS configuration: Use configured maximum attempts (fmt) 2023-06-28 13:32:54 +01:00
Ian Jackson be33f00b31 HS configuration: Use configured maximum attempts 2023-06-28 13:32:54 +01:00
Ian Jackson a0b6f34e42 HS configuration: Plumb configuration through (fmt)
Apply deferred rustfmt churn.
2023-06-28 13:32:54 +01:00
Ian Jackson 3ebc3216e3 HS configuration: Plumb configuration through (clippy)
Apply deferred clippy churn.
2023-06-28 13:32:54 +01:00
Ian Jackson 984652217a HS configuration: Plumb configuration through
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.
2023-06-28 13:32:54 +01:00
Ian Jackson cdad2db082 HS configuration: Add retry parameters to configuration
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.
2023-06-28 13:32:54 +01:00
Ian Jackson cc25c82d4b HS configuration: Add and honour `allow_onion_addrs` in configuration
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`.
2023-06-28 13:32:54 +01:00
Nick Mathewson 2bee27a737 Merge branch 'hsdir-identity' into 'main'
tor-hsclient: Completely hide hsdir identities in errors

See merge request tpo/core/arti!1326
2023-06-28 12:30:22 +00:00
Ian Jackson 88e3b7a147 Merge branch 'config2' into 'main'
Overhaul art's config tests

See merge request tpo/core/arti!1320
2023-06-28 12:25:37 +00:00
Gabriela Moldovan 70f468d0f1 keymgr: Downgrade some TODOs to "TODO HSS".
These don't need to be blockers for the next release.
2023-06-28 13:11:53 +01:00
Gabriela Moldovan 928a9cd7ca keymgr: Remove outdated TODOs regarding error handling.
These were tackled in #901.
2023-06-28 13:07:52 +01:00
Nick Mathewson 42e4929226 Missing semver entry for new dirclient API from !1323 2023-06-28 08:06:32 -04:00
Ian Jackson 41737efced tor-hsclient: Completely hide hsdir identities in errors 2023-06-28 13:02:44 +01:00
gabi-250 63a7b25711 art cfg tests: Fix garbled doc wording 2023-06-28 12:56:09 +01:00
gabi-250 d56f28bc6f arti cfg tests: Fix doc comment 2023-06-28 12:56:09 +01:00
Ian Jackson fa0fb50d80 CI: run a normal all-features-test
I think we do actually do this as part of the coverage job, but that's
not really very clear (and getting the report in that job may be
annoying).

We also do it on nightly as part of the nightly test, but that's an
"allow_fail".
2023-06-28 12:56:09 +01:00