| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | | Merge branch 'rename_rend_message' into 'main' | Nick Mathewson | 2023-03-01 | 1 | -15/+18 | |
| |\ \ | | | | | | | | | | | | | tor-cell: Rename Rendezvous*::message to handshake_info. See merge request tpo/core/arti!1045 | |||||
| | * | | tor-cell: Rename Rendezvous*::message to handshake_info. | Nick Mathewson | 2023-03-01 | 1 | -15/+18 | |
| | | | | | | | | | | | | | Follow-up from !1038 | |||||
| * | | | Merge branch 'hsconn' into 'main' | Ian Jackson | 2023-03-01 | 12 | -97/+1433 | |
| |\ \ \ | | | | | | | | | | | | | | | | | Implement HS state management See merge request tpo/core/arti!1034 | |||||
| | * | | | hsclient isol_map: Use 1:1 notation in diagram to show correspondence | Ian Jackson | 2023-03-01 | 1 | -1/+1 | |
| | | | | | ||||||
| | * | | | hsclient isol_map: Document invariant, fix comment, terminology | Ian Jackson | 2023-03-01 | 1 | -9/+15 | |
| | | | | | | | | | | | | | | | | | Use the occupied/vacant terminology that the slotmap docs use. | |||||
| | * | | | hsclient state: Rename rechecks (from attempts) and add clarifying docs | Ian Jackson | 2023-03-01 | 2 | -9/+25 | |
| | | | | | | | | | | | | | | | | | | | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1034#note_2882079 | |||||
| | * | | | hsclient keys: Be more explicit about HsClientSecretKeys nullable | Ian Jackson | 2023-03-01 | 1 | -5/+9 | |
| | | | | | | | | | | | | | | | | | | | | | It can contain no keys; state this more prominently, and explain what it represents. Also fix a few typos etc. | |||||
| | * | | | hsclient state: Implement and test MultikeyIsolatedMap::retain | Ian Jackson | 2023-03-01 | 2 | -3/+109 | |
| | | | | | ||||||
| | * | | | hsclient state: Split off MultikeyIsolatedMap | Ian Jackson | 2023-03-01 | 4 | -82/+190 | |
| | | | | | ||||||
| | * | | | hsclient state: Move all the data fields into the table | Ian Jackson | 2023-03-01 | 1 | -28/+37 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1034#note_2881576 This is a singificant simplification, in fact. | |||||
| | * | | | tor-llcrypto: Add a TODO re impl Redactable for HsId | Ian Jackson | 2023-03-01 | 1 | -0/+1 | |
| | | | | | ||||||
| | * | | | hsclient: Clarify period task handle TODO | Ian Jackson | 2023-03-01 | 1 | -1/+1 | |
| | | | | | ||||||
| | * | | | hsclient: Document sharing rules | Ian Jackson | 2023-03-01 | 2 | -0/+15 | |
| | | | | | | | | | | | | | | | | | | | | | Text largely from https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1034#note_2881638 | |||||
| | * | | | hsclient state: rustfmt | Ian Jackson | 2023-03-01 | 1 | -241/+244 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | Autogenerated with rustfmt; no code changes. This tidies up the bizarre formatting. | |||||
| | * | | | hsclient state: Lots more doc comments about barriers, structure, etc. | Ian Jackson | 2023-03-01 | 1 | -2/+74 | |
| | | | | | ||||||
| | * | | | hsclient state: Break `obtain` out into a fn | Ian Jackson | 2023-03-01 | 1 | -61/+82 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is getting rather confusing; simply reformtting it won't do, I think. Also there would be much rightward drift. So move the meat out into the new function. (And introduce a convenience alias for its captures.) Docs and reformatting will follow in a moment. | |||||
| | * | | | hsclient state: Demonstrate that our future is now Send | Ian Jackson | 2023-03-01 | 1 | -3/+9 | |
| | | | | | ||||||
| | * | | | hsclient state: Restructure using a scope to drop the mutex guard | Ian Jackson | 2023-03-01 | 2 | -20/+45 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Explicit drops don't work. Instead, introduce a scope. We need two scopes, actually: one where we do the initial table wrangling, and one for the retries after relock. So we must put the meat in a closure so we can reuse it. And we must return the flow control as an enum. Bah, etc. Avoid reformatting this for the moment. This makes the delta legible... | |||||
| | * | | | hsclient state: Break out ServiceState::blank | Ian Jackson | 2023-03-01 | 1 | -5/+12 | |
| | | | | | | | | | | | | | | | | | | | | | We're going to have another function which will want this. Leave a convenience closure to capture the runtime. | |||||
| | * | | | hsclient state: Move error inspection before guard re-lock. | Ian Jackson | 2023-03-01 | 1 | -4/+5 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | This is still correct from a lock hierarchy pov. It moves the guard relock to the end, which is going to be necessary since it is going to have to move right outside the loop. | |||||
| | * | | | hsclient keys: Add a todo to remove spurious Option | Ian Jackson | 2023-03-01 | 1 | -0/+3 | |
| | | | | | ||||||
| | * | | | hsclient keys: Compare all empty sets of keys as equal | Ian Jackson | 2023-03-01 | 1 | -1/+5 | |
| | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1034#note_2881575 | |||||
| | * | | | hsclient keys: Fix non-equal keys test to provide a (dummy) key (fmt) | Ian Jackson | 2023-03-01 | 1 | -1/+4 | |
| | | | | | ||||||
| | * | | | hsclient keys: Fix non-equal keys test to provide a (dummy) key | Ian Jackson | 2023-03-01 | 1 | -4/+10 | |
| | | | | | | | | | | | | | | | | | | | | | We're about to fix the comparison to treat all empty key sets as equal. | |||||
| | * | | | hsclient keys: Provide :none() and Default and .is_empty() | Ian Jackson | 2023-03-01 | 1 | -1/+22 | |
| | | | | | ||||||
| | * | | | hsclient keys: Fix a missing full stop | Ian Jackson | 2023-03-01 | 1 | -1/+1 | |
| | | | | | ||||||
| | * | | | hsclient state: Test most important code paths | Ian Jackson | 2023-03-01 | 3 | -18/+149 | |
| | | | | | ||||||
| | * | | | hsclient: Provide some missing debug impls and trace messages | Ian Jackson | 2023-03-01 | 2 | -2/+25 | |
| | | | | | ||||||
| | * | | | tor-hscrypto: Provide manual Debug impl for HsId | Ian Jackson | 2023-03-01 | 1 | -1/+16 | |
| | | | | | | | | | | | | | | | | | | | | | This is still not great, but it at least makes the output plausible to read by eye. | |||||
| | * | | | Apply rustfmt | Ian Jackson | 2023-03-01 | 3 | -48/+81 | |
| | | | | | ||||||
| | * | | | hsclient state: Provide one test | Ian Jackson | 2023-03-01 | 2 | -0/+106 | |
| | | | | | ||||||
| | * | | | hsclient: Use a generic to provide a mock for connect() | Ian Jackson | 2023-03-01 | 4 | -21/+77 | |
| | | | | | | | | | | | | | | | | | This will allow us to test state.rs. | |||||
| | * | | | tor-circmgr: Provide testing feature and TestConfig | Ian Jackson | 2023-03-01 | 3 | -0/+51 | |
| | | | | | | | | | | | | | | | | | Like the similar thing in tor-guardmgr. | |||||
| | * | | | hsclient: Apply standard lint block | Ian Jackson | 2023-03-01 | 1 | -1/+37 | |
| | | | | | ||||||
| | * | | | hsclient: Move dead code allows to specific locations | Ian Jackson | 2023-03-01 | 3 | -1/+4 | |
| | | | | | ||||||
| | * | | | hsclient: Add vacuous comments as demanded by clippy | Ian Jackson | 2023-03-01 | 3 | -0/+7 | |
| | | | | | ||||||
| | * | | | hsclient state: Bind a variable to stop rustfmt doing a terrible thing | Ian Jackson | 2023-03-01 | 1 | -5/+7 | |
| | | | | | ||||||
| | * | | | hsclient: Provide a constructor for HsClientConnector | Ian Jackson | 2023-03-01 | 2 | -10/+25 | |
| | | | | | ||||||
| | * | | | hsclient: Implement connection attempt tracking state machine | Ian Jackson | 2023-03-01 | 5 | -42/+394 | |
| | | | | | | | | | | | | | | | | | This compiles, but it cannot work yet. Nor can it conveniently be tested. | |||||
| | * | | | HS secret keys: Move aggregate/config to tor-hsclient | Ian Jackson | 2023-03-01 | 3 | -11/+80 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide a more cookied "secret keys for use to connecting to a particular HS" type, with a builder. This wants to use config stuff, so oughtn't to be in tor-*crypto. The individual types remain there. | |||||
| | * | | | hsclient API: Remove notion of ambient keys fromk this layer | Ian Jackson | 2023-03-01 | 2 | -14/+5 | |
| | | | | | ||||||
| | * | | | HS API: Remove HS client keys from circmgr API | Ian Jackson | 2023-03-01 | 3 | -4/+1 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *If* we're going to retain any HS knowledge in circmgr, it definitely doesn't need to know about per-operation client secrets. (Maybe there might be ambient secrets, used for .onion diversion, but they don't need to be in this API.) | |||||
| | * | | | HS planning: Discuss whether to remove all HS code from circmgr | Ian Jackson | 2023-03-01 | 3 | -5/+20 | |
| | | | | | ||||||
| | * | | | HS planning: Intend for HS connector to do all lifecycle mgmt | Ian Jackson | 2023-03-01 | 1 | -6/+3 | |
| | |/ / | | | | | | | | | | | | | | | | | | | | | | Otherwise there has to be a state entry in the circmgr *and* a state entry in the hs connector, for every HS. This division of responsibilit will be confusing. The HS code will then be more completely just a layer on top of circmgr. | |||||
| * | | | Merge branch 'establish_intro_yet_once_more' into 'main' | Nick Mathewson | 2023-03-01 | 12 | -68/+411 | |
| |\ \ \ | |/ / |/| | | | | | | | | Revise EstablishIntro messages so that they can generate and check their MAC and signature. See merge request tpo/core/arti!1043 | |||||
| | * | | tor-cell: Use a match when checking auth_key_type | Nick Mathewson | 2023-03-01 | 1 | -6/+8 | |
| | | | | ||||||
| | * | | tor_cell: Use nested readers and writers for EstablishIntro | Nick Mathewson | 2023-03-01 | 1 | -18/+12 | |
| | | | | ||||||
| | * | | tor-cell: tweak comments on EstablishIntro members. | Nick Mathewson | 2023-03-01 | 1 | -2/+2 | |
| | | | | ||||||
| | * | | Introduce a constant for the length of the output of hs_mac() | Nick Mathewson | 2023-03-01 | 2 | -5/+8 | |
| | | | | ||||||
| | * | | tor-bytes: Clarify that Cursor is not a good thing, and could be neater. | Nick Mathewson | 2023-03-01 | 1 | -2/+11 | |
| | | | | ||||||
