summaryrefslogtreecommitdiff
path: root/crates/fslock-guard/src/lib.rs
Commit message (Collapse)AuthorAgeFilesLines
* fslock-guard: Add links to documentation about windows approachNick Mathewson2024-01-241-0/+7
|
* fslock-guard: use winapi to test file-equivalency on windowsNick Mathewson2024-01-231-6/+19
|
* fslockguard: try to document windows assumptionsNick Mathewson2024-01-231-0/+41
| | | | | These are necessarily a bit hand-wavey, but I think they summarize what we are assuming.
* Remove an XXX: fslock does indeed use O_CLOEXEC.Nick Mathewson2024-01-231-1/+0
|
* fslockguard: implement a delete_lock_file function.Nick Mathewson2024-01-231-3/+29
|
* Use fslock-arti-forkNick Mathewson2024-01-231-19/+6
|
* fslock-guard: Write down the locking protocol on UnixIan Jackson2024-01-231-0/+65
| | | | | | Text from here https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1900#note_2986683 with a few minor fixes.
* fslock-guard: Rename os modulesIan Jackson2024-01-231-2/+2
| | | | | | | | | | | These two modules are key to the implementation of the locking protocols. We must define the locking protocol in terms of underlying OS semantics (since Unix and Windows have different fs concepts and different concurrency semantics) and therefore, although we are sharing some code between the implementations, these modules are what defines the two protocols.
* Give a formal semantics for the fslock operations.Ian Jackson2024-01-221-0/+15
|
* fslock-guard: sketch implementationNick Mathewson2024-01-211-0/+149
This is not yet "correct", since it will rely on https://github.com/brunoczim/fslock/pull/15 (Conceivably, it might be better to make the `fslock` crate rm-safe.)