aboutsummaryrefslogtreecommitdiff
path: root/crates/tor-hsservice/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * | tor-hsservice: test_temp_dir: Improve docs (fmt)Ian Jackson2023-11-291-1/+1
| | |
| * | tor-hsservice: test_temp_dir: Improve docsNick Mathewson2023-11-291-1/+2
| | |
| * | tor-hsservice tests: Make create_keymgr pub(crate)Ian Jackson2023-11-281-2/+2
| | | | | | | | | | | | We're going to want this for other tests in this crate.
| * | tor-hsservice tests: Change create_keymgr to use TestTempDirIan Jackson2023-11-281-24/+26
| | |
| * | tor-hsservice tests: Introduce new test_temp_dir helper moduleIan Jackson2023-11-282-0/+270
| |/ | | | | | | | | | | While debugging IPT persistence I wanted to see what the code was leaving in the storage and keystore directories. This is hard when it's all done with a vanilla tempdir().
* | tor-hsservice: time_store: Change rel time Display to humantime (fmt)Ian Jackson2023-11-291-4/+1
| |
* | tor-hsservice: time_store: Change rel time Display to humantimeIan Jackson2023-11-291-31/+23
| | | | | | | | | | Suggestion 3 from https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1774#note_2970374
* | tor-hsservice: time_store: Change rel time prefix to T+Ian Jackson2023-11-291-13/+13
| | | | | | | | | | Suggestion 2 from https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1774#note_2970374
* | tor-hsservice: time_store: rustfmtIan Jackson2023-11-281-5/+6
| | | | | | | | Apply deferred churn.
* | tor-hsservice: time_store: tests: Split up a stringIan Jackson2023-11-281-1/+4
| |
* | tor-hsservice: time_store: deser strings: don't allocateIan Jackson2023-11-281-5/+19
| | | | | | | | | | | | When is_human_readable, use a Visitor to offer the data format visit_str, which will often allow the data format to avoid consing an actual String.
* | tor-hsservice: time_store: Reference: change serdeIan Jackson2023-11-281-11/+6
| |
* | tor-hsservice: time_store: Reference: impl FromStrIan Jackson2023-11-281-1/+22
| |
* | tor-hsservice: time_store: Reference: change DisplayIan Jackson2023-11-281-4/+8
| |
* | tor-hsservice: time_store: provide time_t_to_system_timeIan Jackson2023-11-281-0/+74
| | | | | | | | Being careful about overflow and avoiding panics is quite a palaver!
* | tor-hsservice: time_store: break out system_time_to_time_tIan Jackson2023-11-281-7/+12
| |
* | tor-hsservice: time_store: SerdeStringOrTransparent macroIan Jackson2023-11-281-26/+41
| | | | | | | | We're going to want to do this for Reference too.
* | tor-hsservice: time_store: FutureTimestamp: change serdeIan Jackson2023-11-281-8/+31
| | | | | | | | Use the string representation in binary formats.
* | tor-hsservice: time_store: FutureTimestamp: impl FromStrIan Jackson2023-11-281-0/+45
| | | | | | | | | | Parse the string representation too. We'll be using this for serde.
* | tor-hsservice: time_store: FutureTimestamp: change DisplayIan Jackson2023-11-281-2/+27
| |
* | tor-hsservice: time_store: tests: Add an mpack testIan Jackson2023-11-281-0/+25
| | | | | | | | We're going to serialise different in binary formats.
* | tor-hsservice: time_store: tests: use a fixed SystemTimeIan Jackson2023-11-281-5/+6
|/ | | | This will make them easier to adjust when we serialise differently.
* Merge branch 'keymgr-derive-builder' into 'main'gabi-2502023-11-283-6/+19
|\ | | | | | | | | | | | | tor-keymgr: Derive Builder for KeyMgr. Closes #1114 See merge request tpo/core/arti!1760
| * tor-keymgr: Derive Builder for KeyMgr (fmt).Gabriela Moldovan2023-11-273-4/+17
| |
| * tor-keymgr: Derive Builder for KeyMgr.Gabriela Moldovan2023-11-273-6/+6
| | | | | | | | | | | | | | `KeyMgr` is soon going to have more fields, so now is a good time to derive `Builder` for it. Closes #1114
* | Merge branch 'hss-debug-serde' into 'main'Ian Jackson2023-11-283-4/+131
|\ \ | | | | | | | | | | | | tor-hsservice: improve Debug and serde See merge request tpo/core/arti!1765
| * | tor-hsservice: Bespoke Debug impl for IptRelayIan Jackson2023-11-271-2/+27
| | | | | | | | | | | | | | | I found myself wanting to dump the IPT manager state in debug output and the default Rust output was far too verbose.
| * | tor-hsservice: derive Debug for IptParametersIan Jackson2023-11-271-0/+6
| | |
| * | tor-hsservice: IptLocalId: test serde and DisplayIan Jackson2023-11-271-0/+48
| | |
| * | tor-hsservice: IptLocalId: bespoke serde implIan Jackson2023-11-271-2/+29
| | | | | | | | | | | | | | | This avoids writing "[42,\n 43,\n ...]" into the storage json, which is (a) wasteful (b) hard to read by hand.
| * | tor-hsservice: IptLocalId: impl DisplayIan Jackson2023-11-271-0/+11
| | | | | | | | | | | | This will help us construct ArtiPaths
| * | tor-hsservice: IptLocalId: provide dummy (test) constructorIan Jackson2023-11-271-0/+10
| |/
* | Merge branch 'persist-prefix' into 'main'Ian Jackson2023-11-287-171/+285
|\ \ | | | | | | | | | | | | HSS IPT persistence - preparatory work See merge request tpo/core/arti!1755
| * | tor-hsservice: ipt_set: Fix broken doc linksIan Jackson2023-11-271-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | "tor-hsservice: Make note_publication_attempt a method on PublishIptSet" broke several of these. (Rebasing to insert this at the appropriate point causes conflicts, so I'm leaving it here at the tip.)
| * | tor-hsservice: import_new_expiry_times: Add another xrefIan Jackson2023-11-271-0/+5
| | |
| * | tor-hsservice: ipt_mgr: Split out start_establisherIan Jackson2023-11-271-13/+46
| | | | | | | | | | | | We're going to need to call this on startup to reestablish existing IPTs.
| * | tor-hsservice: Make import_new_expiry_times not take &mut IptManager (fmt)Ian Jackson2023-11-271-3/+1
| | |
| * | tor-hsservice: Make import_new_expiry_times not take &mut IptManagerIan Jackson2023-11-271-5/+3
| | | | | | | | | | | | | | | We are going to want to call this during startup, when we don't have an IptManager yet.
| * | tor-hsservice: Soup up plumbing for ipt_relay_rotation_timeIan Jackson2023-11-272-10/+11
| | | | | | | | | | | | | | | This will mean if we refer to it in more places, we'll still only have one place to change it.
| * | tor-hsservice: ipt_mgr: Move nascent state records into mod persistIan Jackson2023-11-272-27/+35
| | | | | | | | | | | | | | | Let's avoid cluttering the core algorithm file with this, which is going to expand.
| * | tor-hsservice: Use Instant for planned_retirementIan Jackson2023-11-271-6/+4
| | | | | | | | | | | | We're going to use time_store, which works nicely with Instants.
| * | tor-hsservice: Mockable: Don't pass an explicit keymgr any more (fmt)Ian Jackson2023-11-271-5/+1
| | |
| * | tor-hsservice: Mockable: Don't pass an explicit keymgr any moreIan Jackson2023-11-271-7/+2
| | | | | | | | | | | | There's a keymgr in imm now, so just use that.
| * | tor-hsservice: ipt_mgr: Move KeyMgr to ImmutableIan Jackson2023-11-271-7/+6
| | | | | | | | | | | | As per the TODO.
| * | tor-hsservice: Remove a done TODOIan Jackson2023-11-271-2/+0
| | | | | | | | | | | | This is now in fact plumbed through.
| * | tor-hsservice: ipt_set: Change last_descriptor_expiry_including_slop (fmt)Ian Jackson2023-11-272-5/+9
| | | | | | | | | | | | Mandatory format degradation.
| * | tor-hsservice: ipt_set: Change last_descriptor_expiry_including_slopIan Jackson2023-11-273-52/+125
| | | | | | | | | | | | Prepare for persistence.
| * | tor-hsservice: ipt_set: Make note_publication_attempt a method on PublishIptSetIan Jackson2023-11-272-7/+9
| | | | | | | | | | | | | | | We're going to move the last_descriptor_expiry_including_slop data out of IptSet.
| * | tor-hsservice: ipt_set: Make PublishIptSet a structIan Jackson2023-11-274-30/+35
| | | | | | | | | | | | | | | We're going to add another field here. No functional change, just much churn.
| * | tor-hsservice: ipt_set: Make initial state in the constructorIan Jackson2023-11-274-5/+6
| |/ | | | | | | | | | | | | | | This struct is going to be responsible for loading and storing some persistent state, so it makes sense for it to handle initialisation. This also reduces duplication.