mirror of
https://github.com/linux-apfs/apfsprogs.git
synced 2026-05-01 15:01:13 -07:00
b4f0aef525
Introduce compression, using a modified version of Stan's code from the driver, plus my new implementation of LZBITMAP. This is mainly needed for sealed volumes, since for some reason Apple calculates hashes on the decompressed contents of files instead of the xattrs themselves. At this point, the hash checks are all passing. Very few checks on the compression metadata were put in place; I would like to revisit this in the future, at least to check the inode's reported decompressed size, but it's not a priority right now. These are a lot of messy changes and I was forced to interrupt the work halfway through to reverse engineer LZBITMAP, so I don't recall all the details and I'll keep the commit message brief. Signed-off-by: Ernesto A. Fernández <ernesto@corellium.com>