Add basic infrastructure for storing xattr items
authorEric Biggers <ebiggers3@gmail.com>
Tue, 27 Dec 2016 23:24:55 +0000 (17:24 -0600)
committerEric Biggers <ebiggers3@gmail.com>
Wed, 28 Dec 2016 04:30:49 +0000 (22:30 -0600)
commit0e639be92660b408a20a1875eb1c1d609692999e
treed3d2eb1fd4a97f387c352172f4925df2aac68b63
parent1fbda1dbe72721908b1f99f9f8abf1749e43f4c5
Add basic infrastructure for storing xattr items

Define a new tagged metadata item to hold a list of names and values of
Linux-style extended attributes, and prepare for supporting
capture/apply of extended attributes.

I considered making the xattrs a stream instead, referenced from the
tagged item which would just hold a hash.  This would have allowed
xattrs to be deduplicated between files.  However, I ultimately decided
against this because WIMGAPI and older versions of wimlib would discard
the streams on optimize/export, and extraction would be much more
complicated because xattr streams could come up for extraction before
other streams --- which would be especially problematic for symlinks.
Makefile.am
configure.ac
include/wimlib/apply.h
include/wimlib/tagged_items.h
include/wimlib/xattr.h [new file with mode: 0644]
src/extract.c