]> wimlib.net Git - wimlib/blobdiff - include/wimlib/unix_data.h
Recognize tagged metadata items and use for UNIX data
[wimlib] / include / wimlib / unix_data.h
index 186214b9168ba5e4e1d09d57ea5f0e21384d876e..6432369533acab7ee0c023bf313d0a0ea5fa99e2 100644 (file)
@@ -7,14 +7,25 @@ struct wimlib_unix_data {
        u32 uid;
        u32 gid;
        u32 mode;
-       u32 reserved;
 };
 
-struct wimlib_unix_data_disk {
-       le32 uid;
-       le32 gid;
-       le32 mode;
-       le32 reserved;
-};
+struct wim_inode;
+
+extern bool
+inode_has_unix_data(const struct wim_inode *inode);
+
+extern bool
+inode_get_unix_data(const struct wim_inode *inode,
+                   struct wimlib_unix_data *unix_data);
+
+#define UNIX_DATA_UID  0x1
+#define UNIX_DATA_GID  0x2
+#define UNIX_DATA_MODE 0x4
+
+#define UNIX_DATA_ALL  (UNIX_DATA_UID | UNIX_DATA_GID | UNIX_DATA_MODE)
+
+extern bool
+inode_set_unix_data(struct wim_inode *inode, u32 uid, u32 gid, u32 mode,
+                   int which);
 
 #endif /* _WIMLIB_UNIX_DATA_H  */