]>
Commit | Line | Data |
---|---|---|
1 | // SPDX-License-Identifier: GPL-2.0+ | |
2 | /* | |
3 | * Copyright (C) 2018 Oracle. All Rights Reserved. | |
4 | * Author: Darrick J. Wong <darrick.wong@oracle.com> | |
5 | */ | |
6 | #ifndef XFS_SCRUB_VFS_H_ | |
7 | #define XFS_SCRUB_VFS_H_ | |
8 | ||
9 | /* | |
10 | * Visit a subdirectory prior to iterating entries in that subdirectory. | |
11 | * Return true to continue iteration or false to stop iterating and return to | |
12 | * the caller. | |
13 | */ | |
14 | typedef bool (*scan_fs_tree_dir_fn)(struct scrub_ctx *, const char *, | |
15 | int, void *); | |
16 | ||
17 | /* | |
18 | * Visit each directory entry in a directory. Return true to continue | |
19 | * iteration or false to stop iterating and return to the caller. | |
20 | */ | |
21 | typedef bool (*scan_fs_tree_dirent_fn)(struct scrub_ctx *, const char *, | |
22 | int, struct dirent *, struct stat *, void *); | |
23 | ||
24 | bool scan_fs_tree(struct scrub_ctx *ctx, scan_fs_tree_dir_fn dir_fn, | |
25 | scan_fs_tree_dirent_fn dirent_fn, void *arg); | |
26 | ||
27 | void fstrim(struct scrub_ctx *ctx); | |
28 | ||
29 | #endif /* XFS_SCRUB_VFS_H_ */ |