summaryrefslogtreecommitdiff
path: root/crates/tor-hsclient/src
Commit message (Collapse)AuthorAgeFilesLines
* hsclient: Make HsClientSpecifier a newtype instead of a type alias.Gabriela Moldovan2023-06-291-1/+11
|
* arti-client, hsclient: Typealias HsClientSpecifier to ArtiPathComponent.Gabriela Moldovan2023-06-291-25/+2
| | | | `ArtiPathComponent` is a more generic version of `HsClientSpecifier`.
* Merge branch 'timeouts' into 'main'Ian Jackson2023-06-291-16/+109
|\ | | | | | | | | tor-hsclient: Use estimated timeouts See merge request tpo/core/arti!1342
| * tor-hsclient: Add some notes about timeouts and hopsIan Jackson2023-06-291-0/+8
| |
| * tor-hsclient: Use estimated timeouts for introduction and rendezvous (fmt)Ian Jackson2023-06-291-2/+6
| |
| * tor-hsclient: Use estimated timeouts for introduction and rendezvousIan Jackson2023-06-291-12/+44
| | | | | | | | Replacing RPT_IPT_TIMEOUT is not entirely straightforward.
| * tor-hsclient: Use estimated timeout for hsdir fetches (fmt)Ian Jackson2023-06-291-1/+1
| |
| * tor-hsclient: Use estimated timeout for hsdir fetchesIan Jackson2023-06-291-5/+7
| |
| * tor-hsclient: Provide bodge constant for circuit lengthIan Jackson2023-06-291-0/+11
| |
| * tor-hsclient: Plumb timeout estimation machineryIan Jackson2023-06-291-0/+36
| |
* | Merge branch 'maxintro3' into 'main'Ian Jackson2023-06-291-4/+0
|\ \ | |/ |/| | | | | tor-netdoc: Handle anomalous numbers of introduction points See merge request tpo/core/arti!1332
| * tor-netdoc: Reject hsdescs with no intro pointsIan Jackson2023-06-281-4/+0
| | | | | | | | None of the existing NetdocErrorKinds seemed right.
* | Merge branch 'debug' into 'main'Ian Jackson2023-06-291-15/+12
|\ \ | | | | | | | | | | | | tor-hsclient: Reimplement Debug for MockCirc See merge request tpo/core/arti!1324
| * | tor-hsclient: Reimplement Debug for MockCircIan Jackson2023-06-291-15/+12
| | | | | | | | | | | | | | | This is less code. Also it now dumps the connect_called field which was introduced in the meantime.
* | | Merge branch 'circparams' into 'main'Ian Jackson2023-06-291-2/+2
|\ \ \ | |/ / |/| | | | | | | | | | | | | | tor-hsclient: Use proper CircParameters Closes #935 See merge request tpo/core/arti!1340
| * | tor-hsclient: Use proper CircParametersIan Jackson2023-06-291-2/+2
| | | | | | | | | | | | Fixes #935
* | | Merge branch 'handshake-error' into 'main'Nick Mathewson2023-06-292-31/+59
|\| | | | | | | | | | | | | | tor-hsclient: Handle handshake completion error correctly See merge request tpo/core/arti!1336
| * | tor-hsclient: err: Mention RENDEZVOUS2 in actual messages (fmt)Ian Jackson2023-06-291-1/+3
| | |
| * | tor-hsclient: err: Rename to RendezvousCompletionCircuitErrorIan Jackson2023-06-292-5/+5
| | | | | | | | | | | | | | | | | | | | | Thsi is a bit of a mouthful now, but it is comprehensible. As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1336#note_2917235
| * | tor-hsclient: err: Mention RENDEZVOUS2 in actual messagesIan Jackson2023-06-291-2/+2
| | |
| * | tor-hsclient: err: Move doc comment to correct implIan Jackson2023-06-291-17/+17
| | | | | | | | | | | | | | | See https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1336#note_2917236
| * | tor-hsclient: err: Mention RENDEZVOUS2Ian Jackson2023-06-291-2/+2
| | |
| * | tor-hsclient: err: Reword comments about errorIan Jackson2023-06-291-1/+1
| | |
| * | tor-hsclient: Handle handshake completion error correctlyIan Jackson2023-06-282-6/+31
| | |
| * | tor-hsclient: Rename RendezvousCompletionCircuit from RendezvousCompletionIan Jackson2023-06-282-5/+5
| | | | | | | | | | | | | | | | | | 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.
| * | tor-hsclient: Move handling of Bug to new sectionIan Jackson2023-06-281-1/+2
| |/ | | | | | | It was wrong where ti was.
* | 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.
* | 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-282-10/+25
| | | | | | | | Apply deferred rustfmt churn.
* | HS configuration: Plumb configuration throughIan Jackson2023-06-283-6/+63
| | | | | | | | | | 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-281-4/+2
| | | | | | | | | | | | | | 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.
* | tor-hsclient: Completely hide hsdir identities in errorsIan Jackson2023-06-282-7/+6
| |
* | hsclient: Use HsDescDownloadRequest::set_max_len.Nick Mathewson2023-06-271-1/+12
| |
* | tor-hsclient: Increase some timeoutsIan Jackson2023-06-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | 1. Fix a use of 10ms that should have been TIMEOUT_SLOP. 2. Increase BODGE_YIELD by a factor of 5. Now this test should tolerate being hung up for 125ms. I am hoping that this will fix the CI failure https://gitlab.torproject.org/Diziet/arti/-/jobs/302457 which fails at the line comparing circuit1 with circuit2a. (I can't repro that locally.)
* | tor-hsclient: test: Introduce some constants for timingsIan Jackson2023-06-261-5/+16
| |
* | tor-hsclient: test: Add another sleep for expiry task *start*Ian Jackson2023-06-261-0/+2
| | | | | | | | | | | | | | Without this, the expiry task can end up choosing a 600s timeout starting *after we advanced the clock*. Fixes #923
* | tor-hsclient: impl Debug by hand for MockCircIan Jackson2023-06-261-1/+18
| | | | | | | | | | | | | | | | The provided impl for Mutex is hopeless: it prints just some internal flags and doesn't acquire the mutex for printing purposes. At some point we might want to factor this out as a general function on `Arc<Mutex<...>>` but not now.
* | Merge branch 'data' into 'main'Ian Jackson2023-06-263-11/+121
|\ \ | | | | | | | | | | | | tor-hsclient: Expire old IPT and HS descriptor data eventually See merge request tpo/core/arti!1290
| * | tor-hsclient: Split out expire_old_data functionIan Jackson2023-06-261-0/+5
| | | | | | | | | | | | | | | As per discussion in https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915679
| * | tor-hsclient: Add a comment about what run_housekeeping doesIan Jackson2023-06-261-0/+1
| | | | | | | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915679
| * | tor-hsclient: Add a debug message about task exitIan Jackson2023-06-261-0/+2
| | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915678
| * | tor-hsclient: Comment explaining why no launch_background_tasksIan Jackson2023-06-261-0/+3
| | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915676
| * | tor-hsclient: Say we *mustn't* do housekeeping while dormantIan Jackson2023-06-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is a change to the API docs, but not to the actual code, since our call site is in arti-client and tied to netdir fetch, which *doesn't* happen when dormant. As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1290#note_2915677