]> wimlib.net Git - wimlib/blob - include/wimlib/tagged_items.h
Implement basic handling of xattr streams
[wimlib] / include / wimlib / tagged_items.h
1 #ifndef _WIMLIB_TAGGED_ITEMS_H
2 #define _WIMLIB_TAGGED_ITEMS_H
3
4 #include "wimlib/types.h"
5
6 struct wim_inode;
7
8 /* Windows-style object ID */
9 #define TAG_OBJECT_ID                   0x00000001
10
11 /* [wimlib extension] Standard UNIX metadata: uid, gid, mode, and rdev */
12 #define TAG_WIMLIB_UNIX_DATA            0x337DD873
13
14 /* [wimlib extension] Hash of stream containing Linux-style xattrs */
15 #define TAG_WIMLIB_LINUX_XATTR_HASH     0x337DD874
16
17 extern bool
18 inode_set_tagged_data(struct wim_inode *inode, u32 tag,
19                       const void *data, u32 len);
20
21 extern void *
22 inode_get_tagged_item(const struct wim_inode *inode, u32 desired_tag,
23                       u32 min_data_len, u32 *actual_len_ret);
24
25 #endif /* _WIMLIB_TAGGED_ITEMS_H */