summaryrefslogtreecommitdiff
path: root/crates/fs-mistrust/src/dir.rs
Commit message (Collapse)AuthorAgeFilesLines
* fs-mistrust: Move file access methods on CheckedDir to FileAccess.Nick Mathewson2025-01-141-68/+5
| | | | | These are the methods which we'd like to give new options in #1746; we can move other methods later if we want to.
* fs-mistrust: Define a (stub) FileAccess type.Nick Mathewson2025-01-141-0/+5
| | | | | We're going to move functionality and configuration functions here to implement #1746.
* fs-mistrust::CheckedDir: Refactor some common code.Nick Mathewson2025-01-141-22/+32
|
* fs-mistrust: Add test for (not) opening symlink from CheckedDir.Nick Mathewson2025-01-141-1/+10
|
* fs-mistrust: clarify doc for a private function.Nick Mathewson2025-01-141-0/+2
|
* fs-mistrust: Make CheckedDir::metadata() return an error if path is symlink.Gabriela Moldovan2024-08-121-2/+45
|
* fs-mistrust: Avoid opening the file in CheckedDir::metadata().Gabriela Moldovan2024-08-081-5/+19
| | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2291#note_3057232
* fs-mistrust: Add a TODO about refactoring CheckedDir::metadata().Gabriela Moldovan2024-08-081-0/+1
|
* fs-mistrust: Note that metadata() can return Error::NotFound.Gabriela Moldovan2024-08-081-0/+2
|
* fs-mistrust: Apply deferred cargo fmt.Gabriela Moldovan2024-08-081-1/+4
|
* fs-mistrust: Add a CheckedDir::metadata function.Gabriela Moldovan2024-08-081-1/+28
|
* fs-mistrust: Use Path::try_exists() instead of Path::exists().Gabriela Moldovan2024-07-301-2/+2
|
* Run maint/add_warning.Nick Mathewson2024-03-131-0/+1
|
* Fix typos in doc commentsTobias Stoeckmann2024-03-061-1/+1
|
* fs_mistrust: Provide CheckedDir::make_secure_dirIan Jackson2024-01-291-0/+18
| | | | | | state_dir wants this, to descend into subdirectories. I think the implementation could be improved - see the TODO.
* fs_mistrust: Expose CheckedDir::verifierIan Jackson2024-01-251-2/+2
| | | | | | | | | I'm not sure why this isn't public. It seems like an obviously reasonable transformation. If I as author of !1927 had been an external contributor, I could have worked around the lack of .make_secure_directory() if .verifier() had existed. So I think exposing it would be useful.
* fs-mistrust: Add read_directory and remove_file to CheckedDir.Nick Mathewson2023-11-271-0/+142
| | | | Closes #1117.
* Run maint/add_warning to add lint block everywhereIan Jackson2023-08-231-0/+1
|
* Run maint/add_warning to actually apply new lint allowsIan Jackson2023-07-101-0/+1
|
* Allow clippy::unchecked_duration_subtraction in testsNick Mathewson2023-01-271-0/+1
| | | | | This panics on error, and we're fine with a panic on misbehavior in tests.
* test lint blocks: Add many many automaticallyIan Jackson2022-12-121-0/+8
| | | | | This is precisely the result of running the rune in maint/adhoc-add-lint-blocks.
* Editorial improvements on fs-mistrust errorsNick Mathewson2022-06-221-5/+7
| | | | | | These changes make sure that the errors conform to our preferred style, and include a description of what exactly we were doing when something went wrong.
* fs-mistrust: BadPermission(_, _) -> BadPermission(..)Alex Xu (Hello71)2022-05-311-4/+4
| | | | Next commit adds another parameter to Error::BadPermission.
* fs-mistrust: make Mistrust have a corresponding Builder type.Nick Mathewson2022-05-241-7/+13
| | | | | This is an approximately minimal revision to get Builder in place; subsequent commits will clean up the API.
* fs-mistrust: add various methods.Nick Mathewson2022-05-091-4/+128
| | | | | | | | | | | This includes: * a CachedDir::join method. * functions to read and write from provided filenames in a CachedDir. * a method to tell whether a fs-mistrust error is about bad file permissions, or failure to inspect file permissions or some other kind of IO problem.
* Derive Clone and Debug for CheckedDir.Nick Mathewson2022-05-051-0/+1
|
* fs-mistrust: write a lot about TOCTOU issues.Nick Mathewson2022-05-031-0/+13
|
* fs-mistrust: Rename SecureDir to CheckedDir.Nick Mathewson2022-05-031-8/+8
|
* Add a SecureDir API for checked access to directoriesNick Mathewson2022-05-031-0/+229
The only way to get a SecureDir is by having checked a directory. Once you have one, it encourages you to open and create files and directories with the right permissions, and checks them for you.