25859ee145e875d5492802edb5b2c65eb52de5cf
[util-vserver.git] / util-vserver / kernel / inode.h
1 #ifndef _VX_INODE_H
2 #define _VX_INODE_H
3
4
5 #define IATTR_XID       0x01000000
6
7 #define IATTR_ADMIN     0x00000001
8 #define IATTR_WATCH     0x00000002
9 #define IATTR_HIDE      0x00000004
10 #define IATTR_FLAGS     0x00000007
11
12 #define IATTR_BARRIER   0x00010000
13 #define IATTR_IUNLINK   0x00020000
14 #define IATTR_IMMUTABLE 0x00040000
15
16 #ifdef  __KERNEL__
17
18 #ifndef CONFIG_VSERVER
19 #warning config options missing
20 #endif
21
22 #ifdef  CONFIG_VSERVER_PROC_SECURE
23 #define IATTR_PROC_DEFAULT      ( IATTR_ADMIN | IATTR_HIDE )
24 #define IATTR_PROC_SYMLINK      ( IATTR_ADMIN )
25 #else
26 #define IATTR_PROC_DEFAULT      ( IATTR_ADMIN )
27 #define IATTR_PROC_SYMLINK      ( IATTR_ADMIN )
28 #endif
29
30 #define vx_hide_check(c,m)      (((m) & IATTR_HIDE) ? vx_check(c,m) : 1)
31
32 #endif  /* __KERNEL__ */
33
34 /* inode ioctls */
35
36 #define FIOC_GETXFLG    _IOR('x', 5, long)
37 #define FIOC_SETXFLG    _IOW('x', 6, long)
38
39 #else   /* _VX_INODE_H */
40 #warning duplicate inclusion
41 #endif  /* _VX_INODE_H */