btrfs has several differences from other filesystems currently integrated with fscrypt. It uses a newly proposed extent context object; only works with direct key policies; and allows partially encrypted directories. The design document can be found at [1]. As such, this splits a couple of tests and filters encryption policy printing to account for different filesystems' different default policies. Tests for subvolume encryption, a key feature for btrfs, are not yet complete. Necessary btrfs-progs changes are available at [2]; kernel changes are available at [3]. [1] https://lore.kernel.org/linux-btrfs/YXGyq+buM79A1S0L@relinquished.localdomain/ [2] https://lore.kernel.org/linux-btrfs/cover.1662420176.git.sweettea-kernel@xxxxxxxxxx [3] https://lore.kernel.org/linux-btrfs/cover.1662417859.git.sweettea-kernel@xxxxxxxxxx Changelog: v2: - Mostly rewrote and simplified the changes, as btrfs no longer requires a separate new encryption policy. - Added a filter function to account for different default encryption policies. - Split Adiantum tests, as only the direct-key variant works with btrfs. - https://lore.kernel.org/linux-btrfs/cover.1662417905.git.sweettea-kernel@xxxxxxxxxx v1: - https://lore.kernel.org/linux-btrfs/cover.1660729861.git.sweettea-kernel@xxxxxxxxxx Sweet Tea Dorminy (2): fstests: fscrypt: enable btrfs testing. fstests: fscrypt: update tests of encryption contents for btrfs common/encrypt | 141 +++++++++++++++++++++++++++++++++++++-- common/verity | 2 +- src/fscrypt-crypt-util.c | 18 ++++- tests/btrfs/298 | 85 +++++++++++++++++++++++ tests/btrfs/298.out | 47 +++++++++++++ tests/generic/395 | 10 ++- tests/generic/395.out | 18 ++--- tests/generic/435 | 10 ++- tests/generic/550 | 2 - tests/generic/550.out | 5 -- tests/generic/576 | 3 +- tests/generic/576.out | 6 +- tests/generic/580 | 5 +- tests/generic/580.out | 18 ++--- tests/generic/581 | 4 +- tests/generic/581.out | 12 ++-- tests/generic/584 | 2 - tests/generic/584.out | 5 -- tests/generic/720 | 26 ++++++++ tests/generic/720.out | 6 ++ tests/generic/721 | 26 ++++++++ tests/generic/721.out | 6 ++ 22 files changed, 398 insertions(+), 59 deletions(-) create mode 100755 tests/btrfs/298 create mode 100644 tests/btrfs/298.out create mode 100755 tests/generic/720 create mode 100644 tests/generic/720.out create mode 100755 tests/generic/721 create mode 100644 tests/generic/721.out -- 2.35.1