New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support attribute enumeration for files and directories #636
base: master
Are you sure you want to change the base?
Support attribute enumeration for files and directories #636
Conversation
0e41b8a
to
9a9f2f8
Compare
Note: These changes are part of the Sming LittleFS library, used by Sming. |
2b592b2
to
caa0b9d
Compare
look like some feature is also implemented in: #636 |
Hi, yes, sorry this PR did not go in this release, due to time I was only looking at PRs with smaller scopes this release. I'm slow to bring in new APIs since they need to be supported for quite a while for backwards compatibility reasons. This looks like a very interesting PR, thank @mikee47 for putting it together. In particular I will need to see how it interacts with #580 and #513 (though #513 may come in much later due to being an API breaking change) |
Extends regular `lfs_stat` by querying set of attribute at the same time. Improves performance of directory listings.
Supports attribute manipulation on open files. Important for updating things like security descriptors, timestamps, etc. Note: Attempting to remove registered attributes fails. This could be handled by marking registered attribute as dirty.
Allows file attributes to be efficiently enumerated, required for filesystem backup, etc.
Allows attributes to be accessed more efficiently, and enumerated
caa0b9d
to
a146db8
Compare
Tests passed ✓, Code: 18212 B (+6.7%), Stack: 1440 B (+0.0%), Structs: 832 B (+2.5%)
|
This PR provides some additional attribute enumeration features.
Add
lfs_statcfg
,lfs_dir_readcfg
functionsExtends regular
lfs_stat
by querying set of attribute at the same time.Improves performance when generating directory listings.
Add
lfs_file_getattr
,lfs_file_setattr
,lfs_file_removeattr
Supports attribute manipulation on open files.
Important for updating things like security descriptors, timestamps, etc.
Note: Includes checks for registered attributes.
Attempting to remove registered attributes fails.
This could be handled by marking registered attribute as dirty.
Add
lfs_file_enumattr()
functionAllows file attributes to be efficiently enumerated,
required for filesystem backup, etc.
Support opening handle to directory
Allows attributes to be accessed more efficiently, and enumerated