• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2   FUSE: Filesystem in Userspace
3   Copyright (C) 2023 Giulio Benetti <giulio.benetti@benettiengineering.com>
4 
5   Logging API.
6 
7   This program can be distributed under the terms of the GNU LGPLv2.
8   See the file LICENSE
9 */
10 
11 #ifndef FUSE_MOUNT_COMPAT_H_
12 #define FUSE_MOUNT_COMPAT_H_
13 
14 #include <sys/mount.h>
15 
16 /* Some libc don't define MS_*, so define them manually
17  * (values taken from https://elixir.bootlin.com/linux/v4.0.9/source/include/uapi/linux/fs.h#L68 on)
18  */
19 #ifndef MS_DIRSYNC
20 #define MS_DIRSYNC	128
21 #endif
22 #ifndef MS_REC
23 #define MS_REC		16384
24 #endif
25 #ifndef MS_PRIVATE
26 #define MS_PRIVATE	(1<<18)
27 #endif
28 #ifndef MS_LAZYTIME
29 #define MS_LAZYTIME	(1<<25)
30 #endif
31 
32 #ifndef UMOUNT_DETACH
33 #define UMOUNT_DETACH	0x00000002	/* Just detach from the tree */
34 #endif
35 #ifndef UMOUNT_NOFOLLOW
36 #define UMOUNT_NOFOLLOW	0x00000008	/* Don't follow symlink on umount */
37 #endif
38 #ifndef UMOUNT_UNUSED
39 #define UMOUNT_UNUSED	0x80000000	/* Flag guaranteed to be unused */
40 #endif
41 
42 #endif /* FUSE_MOUNT_COMPAT_H_ */
43