@@ -81,6 +81,18 @@ _scratch_mkfs_encrypted()
esac
}
+_scratch_mkfs_sized_encrypted()
+{
+ case $FSTYP in
+ ext4|f2fs)
+ MKFS_OPTIONS="$MKFS_OPTIONS -O encrypt" _scratch_mkfs_sized $*
+ ;;
+ *)
+ _notrun "Filesystem $FSTYP not supported in _scratch_mkfs_sized_encrypted"
+ ;;
+ esac
+}
+
# Give the invoking shell a new session keyring. This makes any keys we add to
# the session keyring scoped to the lifetime of the test script.
_new_session_keyring()
@@ -76,8 +76,7 @@ fs_size_in_mb=64
fs_size=$((fs_size_in_mb * 1024 * 1024))
dd if=/dev/zero of=$SCRATCH_DEV bs=$((1024 * 1024)) \
count=$fs_size_in_mb &>> $seqres.full
-MKFS_OPTIONS="$MKFS_OPTIONS -O encrypt" \
- _scratch_mkfs_sized $fs_size &>> $seqres.full
+_scratch_mkfs_sized_encrypted $fs_size &>> $seqres.full
_scratch_mount
keydesc=$(_generate_encryption_key)
Test case generic/399 hardcodes "-O encrypt" in MKFS_OPTIONS when calling _scratch_mkfs_sized, which only works with the mkfs of certain filesystems. Create a new helper, _scratch_mkfs_sized_encrypted, for handling the differences between the mkfs tools of different filesystems. It also allows those filesystems whose mkfs doesn't accept "-O encrypt" to skip the test gracefully until proper support is added for them in the helper. ubifs is not supported in the new helper despite supporting encryption, as _scratch_mkfs_sized has no ubifs support and adding that should be done in a separate patch. Signed-off-by: Ari Sundholm <ari@tuxera.com> --- common/encrypt | 12 ++++++++++++ tests/generic/399 | 3 +-- 2 files changed, 13 insertions(+), 2 deletions(-)