]> wimlib.net Git - wimlib/blob - include/wimlib/unix_data.h
6432369533acab7ee0c023bf313d0a0ea5fa99e2
[wimlib] / include / wimlib / unix_data.h
1 #ifndef _WIMLIB_UNIX_DATA_H
2 #define _WIMLIB_UNIX_DATA_H
3
4 #include "wimlib/types.h"
5
6 struct wimlib_unix_data {
7         u32 uid;
8         u32 gid;
9         u32 mode;
10 };
11
12 struct wim_inode;
13
14 extern bool
15 inode_has_unix_data(const struct wim_inode *inode);
16
17 extern bool
18 inode_get_unix_data(const struct wim_inode *inode,
19                     struct wimlib_unix_data *unix_data);
20
21 #define UNIX_DATA_UID   0x1
22 #define UNIX_DATA_GID   0x2
23 #define UNIX_DATA_MODE  0x4
24
25 #define UNIX_DATA_ALL   (UNIX_DATA_UID | UNIX_DATA_GID | UNIX_DATA_MODE)
26
27 extern bool
28 inode_set_unix_data(struct wim_inode *inode, u32 uid, u32 gid, u32 mode,
29                     int which);
30
31 #endif /* _WIMLIB_UNIX_DATA_H  */