4 #ifdef CONFIG_INOXID_NONE
6 #define MAX_UID 0xFFFFFFFF
7 #define MAX_GID 0xFFFFFFFF
9 #define INOXID_XID(uid, gid, xid) (0)
11 #define XIDINO_UID(uid, xid) (uid)
12 #define XIDINO_GID(gid, xid) (gid)
17 #ifdef CONFIG_INOXID_GID16
19 #define MAX_UID 0xFFFFFFFF
20 #define MAX_GID 0x0000FFFF
22 #define INOXID_XID(uid, gid, xid) (((gid) >> 16) & 0xFFFF)
24 #define XIDINO_UID(uid, xid) (uid)
25 #define XIDINO_GID(gid, xid) (((gid) & 0xFFFF) | ((xid) << 16))
31 #ifdef CONFIG_INOXID_GID24
33 #define MAX_UID 0x00FFFFFF
34 #define MAX_GID 0x00FFFFFF
36 #define INOXID_XID(uid, gid, xid) ((((uid) >> 16) & 0xFF00) | (((gid) >> 24) & 0xFF))
38 #define XIDINO_UID(uid, xid) (((uid) & 0xFFFFFF) | (((xid) & 0xFF00) << 16))
39 #define XIDINO_GID(gid, xid) (((gid) & 0xFFFFFF) | (((xid) & 0x00FF) << 24))
44 #ifdef CONFIG_INOXID_GID32
46 #define MAX_UID 0xFFFFFFFF
47 #define MAX_GID 0xFFFFFFFF
49 #define INOXID_XID(uid, gid, xid) (xid)
51 #define XIDINO_UID(uid, xid) (uid)
52 #define XIDINO_GID(gid, xid) (gid)
57 #ifdef CONFIG_INOXID_RUNTIME
59 #define MAX_UID 0xFFFFFFFF
60 #define MAX_GID 0xFFFFFFFF
62 #define INOXID_XID(uid, gid, xid) (0)
64 #define XIDINO_UID(uid, xid) (uid)
65 #define XIDINO_GID(gid, xid) (gid)
70 #define INOXID_UID(uid, gid) ((uid) & MAX_UID)
71 #define INOXID_GID(uid, gid) ((gid) & MAX_GID)
73 static inline uid_t vx_map_uid(uid_t uid)
75 if ((uid > MAX_UID) && (uid != -1))
77 return (uid & MAX_UID);
80 static inline gid_t vx_map_gid(gid_t gid)
82 if ((gid > MAX_GID) && (gid != -1))
84 return (gid & MAX_GID);
88 #ifdef CONFIG_VSERVER_LEGACY
89 #define FIOC_GETXID _IOR('x', 1, long)
90 #define FIOC_SETXID _IOW('x', 2, long)
91 #define FIOC_SETXIDJ _IOW('x', 3, long)
94 #endif /* _LINUX_XID_H_ */