summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | tor-hsservice: replay log test: Break out sigemptyset()Ian Jackson2024-02-121-3/+7
| |
* | tor-hsservice: replay log test: Plumb output manuallyIan Jackson2024-02-121-2/+13
|/ | | | | | | | | Something libtest is doing hides the child stderr/stdout from the test log, when --nocapture is not given. With these changes, I see much more output in failing cases or with --nocapture. In the case mentioned in #1264, the message "we survived raise SIGUSR2" is now printed both with and without --nocapture.
* educe: Use std's default for two structsIan Jackson2024-02-122-5/+2
| | | | | | Reviewing uses of `#[educe(default)]`, I came across these two places where it was applied to a non-generic struct without any special attributes on fields. std's derive will do just as well here.
* educe: Use std's default for enums where default variant is unitIan Jackson2024-02-1212-62/+36
| | | | | | | | | | | | | Since Rust 1.66, std's default works properly for enums, provided that the default variant is a unit. Review all uses of `#[educe(default)]` on enums and replace them with std where possible, which is most of them. In 1.66 and later, std's `#[derive(Default)]` doesn't infer any generic bounds on the derived impl, where it's an enum - since the unit variant can always be constructed. So this change doesn't add any generic bounds and is not API-visible.
* Merge branch 'hsrproxy_errs' into 'main'Alexander Færøy2024-02-081-22/+34
|\ | | | | | | | | hsproxy: Improve error messages. See merge request tpo/core/arti!1973
| * hsproxy: Improve error messages.Nick Mathewson2024-02-081-22/+34
| | | | | | | | | | | | | | | | When giving an error message about an hsrproxy configuration: 1) mention that this is for an onion service. 2) mention what the invalid text was. Part of #1266
* | tor-persist: state_dir: Use DOT_LOCK in the final locationIan Jackson2024-02-081-1/+1
| | | | | | | | | | Actually, we want to test handling of the string with whatever the extension would be, if it changed.
* | tor-persist: state_dir: Introduce DOT_LOCKIan Jackson2024-02-081-2/+7
| | | | | | | | | | | | | | And replace ".lock" with it. Now the only place that the "lock" extension this is still present as a literal is in a test.
* | tor-persist: state_dir: Introduce LOCK_EXTNIan Jackson2024-02-081-4/+6
| | | | | | | | | | | | And replace "lock" with it. This is the first half of not open-coding this; the sites where the literal string is ".lock" are in the next commit, to help avoid the slip of using the wrong constant.
* | tor-persist: state_dir: Add a note about the instance modification timeIan Jackson2024-02-081-0/+3
| |
* | tor-persist: state_dir: Test that junk is ignoredIan Jackson2024-02-081-0/+27
| |
* | tor-persist: state_dir: Fix typoNick Mathewson2024-02-081-1/+1
| |
* | tor-persist: state_dir: Improve an error messageNick Mathewson2024-02-081-1/+1
| |
* | tor-persist: state_dir: Add a clippy allowIan Jackson2024-02-081-0/+1
| |
* | tor-persist: state_dir: Drop unused void dependencyIan Jackson2024-02-081-2/+1
| |
* | tor-persist: state_dir: (Re)move unused imports and allow (fmt)Ian Jackson2024-02-081-1/+1
| |
* | tor-persist: state_dir: (Re)move unused imports and allowIan Jackson2024-02-081-15/+10
| |
* | tor-persist: state_dir terminology: Use "INSTANCE_ID" in docsIan Jackson2024-02-081-5/+5
| | | | | | | | | | | | Now ee consistently use "instance id" or "instance identity" (or, where unambiguous, "id"), to mean the identity of an instance within a kind, and "instance" to refer to the whole thing including the kind.
* | tor-persist: state_dir tests: Test mtime resetIan Jackson2024-02-081-1/+184
| |
* | tor-persist: state_dir tests: Test iteration and purgeIan Jackson2024-02-082-0/+257
| |
* | tor-persist: state_dir tests: Break out mk_state_dirIan Jackson2024-02-081-5/+9
| | | | | | | | We're going to get more call sites.
* | tor-persist: state_dir terminology: Use "key", not "slug" (fmt)Ian Jackson2024-02-081-9/+4
| |
* | tor-persist: state_dir terminology: Use "key", not "slug"Ian Jackson2024-02-081-29/+30
| | | | | | | | | | | | | | | | Slug is the general type. Instance kinds are slugs too. We need a word for the slug-within-an-instance which identifies a storage location for StorageHandle, or a raw subdirectory. Let's use "key". Change the terminology (and variable names) everywhere.
* | tor-persist: state_dir: expiry: Implement purge_instancesIan Jackson2024-02-081-2/+133
| |
* | tor-persist: state_dir: expiry: Ensure that instance dir mtime is updatedIan Jackson2024-02-082-3/+19
| | | | | | | | | | | | Add comments where it's done automatically. (There will be tests of the claims I'm making, in a later commit.)
* | tor-persist: state_dir: purge API: Clarify callback edge casesIan Jackson2024-02-081-1/+26
| |
* | tor-persist: state_dir: purge API: Add notes about instance mtimeIan Jackson2024-02-081-0/+9
| |
* | tor-persist: state_dir: purge API: Discuss deletion non-atomicityIan Jackson2024-02-081-0/+31
| |
* | tor-persist: state_dir: purge API: Replace retain_unused_for with age_filterIan Jackson2024-02-081-14/+14
| | | | | | | | | | This will be slightly less ergonomic at call sites but it is a more orthogonal and logical API.
* | tor-persist: state_dir: purge API: Have purge_instances take SystemTimeIan Jackson2024-02-081-3/+10
| | | | | | | | | | | | | | Purging depends on the current time. We will want this to be able to come from Runtime but we don't want to have those types in this API.
* | tor-persist: state_dir: purge API: PurgeHandler must provide the kindIan Jackson2024-02-081-0/+6
| | | | | | | | We purge per-kind.
* | tor-persist: state_dir: docs: Remove a duplicated paragraphIan Jackson2024-02-081-5/+0
| | | | | | | | This was probably the result of rebase conflicts during develoopment.
* | tor-persist: state_dir: docs: Linkify a ref to StorageHandleIan Jackson2024-02-081-1/+1
| |
* | tor-persist: state_dir: Implement list_instancesIan Jackson2024-02-083-5/+72
|/
* Clarify onion service example(s) a little more.Nick Mathewson2024-02-081-3/+5
|
* Fix compilation with musl.Nick Mathewson2024-02-061-3/+3
| | | | | | | | Don't try to name the type of `RLIMIT_FSIZE` in our tests: its type is either `c_int` or `__rlimit_resource_t` depending on the libc instance. Closes #1264.
* tor-keymgr: Downgrade a TODO to a Note.Gabriela Moldovan2024-02-051-3/+3
| | | | | | | I don't think we need to do this right now, so I am downgrading this TODO. Part of #1115
* tor-keymgr: Make KeyMgr::remove return the removed key (fmt).Gabriela Moldovan2024-02-051-24/+28
|
* tor-keymgr: Make KeyMgr::remove return the removed key.Gabriela Moldovan2024-02-053-6/+11
| | | | Part of #1115
* tor-keymgr: Remove a TODO about rewriting KeyType.Gabriela Moldovan2024-02-051-8/+0
| | | | | | Not all algorithms have exactly 2 variants (`Public` and `Keypair`). For example, for `ed25519`, we need `Public`, `Keypair`, and `ExpandedKeypair`.
* tor-keymgr: Downgrade a TODO from a test.Gabriela Moldovan2024-02-051-1/+1
|
* tor-keymgr: Downgrade a TODO about the KeyType API.Gabriela Moldovan2024-02-051-1/+1
| | | | | | | The `KeySpecifier` argument isn't needed yet, so let's defer this for now. Part of #1115
* tor-keymgr: Downgrade a TODO about the dummy API.Gabriela Moldovan2024-02-051-1/+1
|
* tor-keymgr: Make KeyMgr::insert return the old key.Gabriela Moldovan2024-02-053-10/+20
| | | | Part of #1115
* tor-keymgr: Remove a TODO about get_from_store().Gabriela Moldovan2024-02-051-3/+1
| | | | | | Bailing on the first inaccessible keystore is correct. Part of #1115
* tor-keymgr: Rename KeyInfoExtractor to KeyPathInfoExtractor (fmt).Gabriela Moldovan2024-02-052-3/+3
|
* tor-keymgr: Rename KeyInfoExtractor to KeyPathInfoExtractor.Gabriela Moldovan2024-02-056-18/+20
| | | | | | This trait extracts a `KeyPathInfo`, not a `KeyInfo`. Part of #1115
* tor-keymgr: Derive getters for KeyPathInfo.Gabriela Moldovan2024-02-053-3/+3
| | | | Part of #1115
* tor-keymgr: Remove a TODO about renaming Keystore.Gabriela Moldovan2024-02-051-4/+0
| | | | | | I think the current naming is fine. Part of #1115
* Merge branch 'delete-semvers' into 'main'Ian Jackson2024-02-059-27/+0
|\ | | | | | | | | Remove all semver.md files to start a fresh release round See merge request tpo/core/arti!1957