summaryrefslogtreecommitdiff
path: root/crates/tor-hsclient
Commit message (Collapse)AuthorAgeFilesLines
...
* | tor-hsclient: Drop some temporary trace callsIan Jackson2023-06-212-8/+2
| | | | | | | | | | These were added as part of a debugging #885, and are no longer needed.
* | tor-hsclient: Drop two eprintlns in production codeIan Jackson2023-06-211-2/+0
| |
* | tor-hsclinet: Promote dead code allows to cover all testsIan Jackson2023-06-211-1/+3
| | | | | | | | | | We want to remove the crate-level dead code allows. The tests are incomplete and there are multiple todos for that.
* | tor-hsclient: Use a formulaic TODO mark for incompleteness of testsIan Jackson2023-06-211-5/+5
| |
* | tor-hsclinet: Add a narrow allow, pending answer to open questionIan Jackson2023-06-211-0/+1
| | | | | | | | | | I need to talk to HS expert(s) about when this circuit can be torn down.
* | tor-hsclient: Remove unused Context.hs_blind_id_keyIan Jackson2023-06-211-3/+0
| |
* | tor-hsclient: Add an allow for a deliberately-unused variableIan Jackson2023-06-211-0/+1
| |
* | tor-hsclient: Omit some unussed struct fields in patternsIan Jackson2023-06-211-2/+2
|/ | | | | For the arms that have a fixed retry time, or a fixed ErrorKind, dont't bind the unused inner error.
* Merge branch 'netdoc-todos' into 'main'Nick Mathewson2023-06-161-0/+2
|\ | | | | | | | | Resolve many TODO HS items in tor-netdoc See merge request tpo/core/arti!1251
| * hsclient: note that we should check revctr.Nick Mathewson2023-06-161-0/+2
| |
* | keymgr: Move the HS client and service key specifiers out of tor-keymgr.Gabriela Moldovan2023-06-154-2/+83
| | | | | | | | | | | | The HS `HsClientSpecifier` and `HsClientSecretKeySpecifier` are moved to `tor-hsclient`. The HS service secret key specifier stubs are moved to `tor-hsservice`.
* | hsclient: Change builder error return type to ConfigBuildError.Gabriela Moldovan2023-06-151-1/+1
| | | | | | | | | | | | It's not perfectly clear what this error type should be, so let's use `ConfigBuildError` for now (it makes things easier in `arti-client`, as we already have an `ErrorDetail` for it).
* | tor-hsclient: Make Untried a {}-less unitIan Jackson2023-06-151-2/+2
| | | | | | | | | | | | | | Suggested here https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1247#note_2912642 It's unlikely this will grow any content, so fine.
* | tor-hsclient: Insert a blank linegabi-2502023-06-151-0/+1
| |
* | tor-hsclient: Docs improvements.gabi-2502023-06-151-2/+2
| |
* | tor-hsclient: Remove two done TODOsIan Jackson2023-06-151-2/+0
| |
* | tor-hsclient: provide intro_index accessor for FailedAttemptError (xref)Ian Jackson2023-06-151-1/+2
| | | | | | | | Add a cross-reference to docs arising from MR comments in !1246.
* | tor-hsclient: Actually store our IPT experiencesIan Jackson2023-06-151-7/+42
| |
* | tor-hsclient: intro_rend_connect: bind `outcome`Ian Jackson2023-06-151-3/+3
| | | | | | | | This will be used in a moment.
* | tor-hsclient: Actually choose which intro points to useIan Jackson2023-06-151-3/+75
| | | | | | | | | | Right now this just always chooses randomly because nothing stores anything in the HashMap.
* | tor-hsclient: Introduce RelayIdForExperienceIan Jackson2023-06-151-9/+37
| | | | | | | | | | Wrap this up in a newtype so we don't accidentally use it for anything else. Provide two constructors, one for storing and one for lookups.
* | tor-hsclient: Add random sort key to UsableIptIan Jackson2023-06-151-0/+6
| |
* | tor-hsclient: provide intro_index accessor for FailedAttemptErrorIan Jackson2023-06-152-1/+24
| |
* | tor-hsclient: InvalidTarget::ImpossibleRelayIds is RetryTime::NeverIan Jackson2023-06-141-1/+1
| | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1246#note_2912105
* | tor-hsclient: Correction to HasRetryTime for InvalidTarget docNick Mathewson2023-06-141-1/+2
| |
* | tor-hsclient: Add doc for HasKind for FailedAttemptErrorIan Jackson2023-06-141-0/+16
| | | | | | | | | | There is a cross-reference here to code (`IptSortKey`) in another branch that I haven't made an MR for yet.
* | tor-hsclient: Add docs and comments about HasRetryTime for InvalidTargetIan Jackson2023-06-141-0/+18
| |
* | tor-hsclient: impl HasRetryTime for FailedAttemptErrorIan Jackson2023-06-142-2/+25
| |
* | tor-hsclient: impl HasRetryTime for InvalidTargetIan Jackson2023-06-141-1/+14
|/
* tor-hsclient: Add some more debuggingIan Jackson2023-06-131-2/+39
|
* tor-hsclient: Return the circuitIan Jackson2023-06-131-4/+1
|
* tor-hsclient: Conduct the INTRODUCE1 exchangeIan Jackson2023-06-132-6/+59
|
* tor-hsclient: Remove an already-done TODOIan Jackson2023-06-131-3/+0
| | | | Since !1238 we do pass the handshake_state along.
* tor-hsclient: Rename some errors for greater consistencyIan Jackson2023-06-132-15/+15
|
* tor-hsclient: Reorder timeout errors to be "less interesting"Ian Jackson2023-06-131-21/+21
| | | | | If something *other* than a timeout went wrong, then that is less expected so more interesting.
* tor-hsclient: Improve proto_oneshot docsNick Mathewson2023-06-131-1/+1
|
* tor-hsclient: Pass handshake_state to complete_handcshake (fmt)Ian Jackson2023-06-131-1/+4
|
* tor-hsclient: Pass handshake_state to complete_handcshakeIan Jackson2023-06-131-7/+21
| | | | | Pass Introduced to complete_handshake. The lack of this was a slip. Add handshake_state to Introduced, and use it.
* tor-hsclient: Add a missing docIan Jackson2023-06-131-1/+1
| | | | Requested in !1228 but overlooked
* tor-hsclient: Introduce proto_oneshot, to help with message handling (fmt)Ian Jackson2023-06-131-12/+5
|
* tor-hsclient: Introduce proto_oneshot, to help with message handlingIan Jackson2023-06-133-57/+120
| | | | | This gets rid of a lot of repeated `oneshot::<...<Result, ...>>` and a bit of repeated functional code, etc.
* tor-hsclient: (try to) receive the RENDEZVOUS2 messageIan Jackson2023-06-132-7/+38
|
* tor-hsclient: Fix a botched doc commentIan Jackson2023-06-131-1/+1
|
* proto: Convert MsgHandler API to expect a message, not a cell.Nick Mathewson2023-06-121-23/+14
| | | | Closes #887.
* hsclient: fill in a lot more introduce/rendezvous logic.Nick Mathewson2023-06-121-4/+146
| | | | | | This code tries to fill in some TODO HS code, replacing it with a lot more code with a bunch more TODO HS comments. Hopefully the expansions of the new TODO HS comments should be simpler.
* hsclient: receive rendezvous2 messages too.Nick Mathewson2023-06-121-17/+25
|
* hsclient: Move the body of the msg handler into a new functionNick Mathewson2023-06-121-26/+41
|
* hsclient: Add a second oneshot to Rendezvous msghandlerNick Mathewson2023-06-121-9/+36
| | | | | | On a client's circuit to the rendezvous point, we need to first wait for an `RENDEZVOUS_ESTABLISHED` message, and then for a `RENDEZVOUS2` message.
* hsclient: use hs-client feature in tor-proto.Nick Mathewson2023-06-121-1/+1
|
* Upgrade async-trait requirement to 1.54Nick Mathewson2023-06-121-1/+1
| | | | | | | | We need the fix from [82d69902], which first appeared in async-trait version 1.54. (Technically we only need this fix in tor-hsclient, but we may as well update our minimal async-trait version everywhere.) [82d69902]: https://github.com/dtolnay/async-trait/commit/82d69902535f5cb7f5d9e1ea4168c64abd496389