wimlib:xattr_streams

Last commit made on 2016-12-27
Get this branch:
git clone -b xattr_streams https://git.launchpad.net/wimlib

Branch merges

Branch information

Name:
xattr_streams
Repository:
lp:wimlib

Recent commits

65477d4... by Eric Biggers

Document xattr support

60e075f... by Eric Biggers

unix_apply.c: support extracting xattrs

886dfa1... by Eric Biggers

unix_apply.c: separate creation, data extraction, and metadata passes

This will be needed to support applying extended attributes. To make
the xattr support more scalable, each file's xattrs will be stored in a
dedicated stream rather than directly in the metadata resource.
Therefore, a file's xattrs might come up for extraction before the
file's contents; so we must create the files first. We also can't apply
metadata, e.g. the file mode, before setting xattrs, since the file
mode might indicate the file is readonly, which prevents setting xattrs.
So we must apply metadata last.

Symlinks with xattrs will have to be treated specially as they cannot be
created first.

fc15ba2... by Eric Biggers

unix_capture.c: support capturing xattrs

9261077... by Eric Biggers

Add an error code to represent an invalid xattr stream

4ef81cb... by Eric Biggers

Implement basic handling of xattr streams

Add a new stream type to represent a list of Linux-style extended
attributes, and add a new per-file tagged item type to represent the
hash of the xattr stream.

321d969... by Eric Biggers

tagged_item updates

- expose tagged_item functions in new header tagged_items.h
- make object_id functions inline functions in object_id.h
- add a new function inode_set_tagged_data() which removes existing
  items, and use it for inode_set_object_id()

72b5545... by Eric Biggers

inode.c: make inode_add_stream_with_data() return the new stream

90f1e04... by Eric Biggers

Improve random number generation

wimlib used rand() to generate random numbers, e.g. for GUIDs. This was
neither cryptographically secure nor thread-safe. Use getrandom(),
/dev/urandom, or RtlGenRandom() instead.

bb3005f... by Eric Biggers

Constify some data