1 #ifndef _UAPI_LINUX_MOUNT_H
2 #define _UAPI_LINUX_MOUNT_H
3
4
5
6
7
8
9
10
11 #define MS_RDONLY 1
12 #define MS_NOSUID 2
13 #define MS_NODEV 4
14 #define MS_NOEXEC 8
15 #define MS_SYNCHRONOUS 16
16 #define MS_REMOUNT 32
17 #define MS_MANDLOCK 64
18 #define MS_DIRSYNC 128
19 #define MS_NOATIME 1024
20 #define MS_NODIRATIME 2048
21 #define MS_BIND 4096
22 #define MS_MOVE 8192
23 #define MS_REC 16384
24 #define MS_VERBOSE 32768
25
26 #define MS_SILENT 32768
27 #define MS_POSIXACL (1<<16)
28 #define MS_UNBINDABLE (1<<17)
29 #define MS_PRIVATE (1<<18)
30 #define MS_SLAVE (1<<19)
31 #define MS_SHARED (1<<20)
32 #define MS_RELATIME (1<<21)
33 #define MS_KERNMOUNT (1<<22)
34 #define MS_I_VERSION (1<<23)
35 #define MS_STRICTATIME (1<<24)
36 #define MS_LAZYTIME (1<<25)
37
38
39 #define MS_SUBMOUNT (1<<26)
40 #define MS_NOREMOTELOCK (1<<27)
41 #define MS_NOSEC (1<<28)
42 #define MS_BORN (1<<29)
43 #define MS_ACTIVE (1<<30)
44 #define MS_NOUSER (1<<31)
45
46
47
48
49 #define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_I_VERSION|\
50 MS_LAZYTIME)
51
52
53
54
55 #define MS_MGC_VAL 0xC0ED0000
56 #define MS_MGC_MSK 0xffff0000
57
58
59
60
61 #define OPEN_TREE_CLONE 1
62 #define OPEN_TREE_CLOEXEC O_CLOEXEC
63
64
65
66
67 #define MOVE_MOUNT_F_SYMLINKS 0x00000001
68 #define MOVE_MOUNT_F_AUTOMOUNTS 0x00000002
69 #define MOVE_MOUNT_F_EMPTY_PATH 0x00000004
70 #define MOVE_MOUNT_T_SYMLINKS 0x00000010
71 #define MOVE_MOUNT_T_AUTOMOUNTS 0x00000020
72 #define MOVE_MOUNT_T_EMPTY_PATH 0x00000040
73 #define MOVE_MOUNT__MASK 0x00000077
74
75
76
77
78 #define FSOPEN_CLOEXEC 0x00000001
79
80
81
82
83 #define FSPICK_CLOEXEC 0x00000001
84 #define FSPICK_SYMLINK_NOFOLLOW 0x00000002
85 #define FSPICK_NO_AUTOMOUNT 0x00000004
86 #define FSPICK_EMPTY_PATH 0x00000008
87
88
89
90
91 enum fsconfig_command {
92 FSCONFIG_SET_FLAG = 0,
93 FSCONFIG_SET_STRING = 1,
94 FSCONFIG_SET_BINARY = 2,
95 FSCONFIG_SET_PATH = 3,
96 FSCONFIG_SET_PATH_EMPTY = 4,
97 FSCONFIG_SET_FD = 5,
98 FSCONFIG_CMD_CREATE = 6,
99 FSCONFIG_CMD_RECONFIGURE = 7,
100 };
101
102
103
104
105 #define FSMOUNT_CLOEXEC 0x00000001
106
107
108
109
110 #define MOUNT_ATTR_RDONLY 0x00000001
111 #define MOUNT_ATTR_NOSUID 0x00000002
112 #define MOUNT_ATTR_NODEV 0x00000004
113 #define MOUNT_ATTR_NOEXEC 0x00000008
114 #define MOUNT_ATTR__ATIME 0x00000070
115 #define MOUNT_ATTR_RELATIME 0x00000000
116 #define MOUNT_ATTR_NOATIME 0x00000010
117 #define MOUNT_ATTR_STRICTATIME 0x00000020
118 #define MOUNT_ATTR_NODIRATIME 0x00000080
119
120 #endif