summaryrefslogtreecommitdiff
path: root/src/basic/fs-util.h
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2020-04-29 13:58:53 +0200
committerLennart Poettering <lennart@poettering.net>2020-05-19 17:27:13 +0200
commit053e0626dbbfa5561a3c746d911e7be1525a64f1 (patch)
tree629125c5c1e69e1a38991db189efe79873c32507 /src/basic/fs-util.h
parent1d06deba0fb82411a209d5bdd99f0fb42a174788 (diff)
downloadsystemd-053e0626dbbfa5561a3c746d911e7be1525a64f1.tar.gz
fs-util: teach unlinkat_deallocate() a simple scheme for overwriting for erasing
With that it becomes useful for deleting password files and such.
Diffstat (limited to 'src/basic/fs-util.h')
-rw-r--r--src/basic/fs-util.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h
index 0889239829..dd101c61cc 100644
--- a/src/basic/fs-util.h
+++ b/src/basic/fs-util.h
@@ -113,7 +113,13 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(char*, unlink_and_free);
int access_fd(int fd, int mode);
void unlink_tempfilep(char (*p)[]);
-int unlinkat_deallocate(int fd, const char *name, int flags);
+
+typedef enum UnlinkDeallocateFlags {
+ UNLINK_REMOVEDIR = 1 << 0,
+ UNLINK_ERASE = 1 << 1,
+} UnlinkDeallocateFlags;
+
+int unlinkat_deallocate(int fd, const char *name, UnlinkDeallocateFlags flags);
int fsync_directory_of_file(int fd);
int fsync_full(int fd);