Skip to contentSkip to conversation

xfstests-bld: populate keyring with default key for test_dummy_encryption

PATCH In review Eric Biggers 2 participants 4 messages Jan 30, 2017 – Jan 31, 2017

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 xfstests-bld: populate keyring with default key for test_dummy_encryption

From: Eric Biggers <[email protected]>

We can improve test coverage and simplify the test_dummy_encryption kernel logic by requiring userspace to add a default master key to the keyring. Update xfstests-bld to do this. This allows xfstests-bld to test kernels with the corresponding kernel patch applied ("fscrypt: make test_dummy_encryption require a keyring key"). It can still test older kernels too; the key just doesn't get used in that case.

---
 kvm-xfstests/test-appliance/files/root/fs/ext4/config | 13 +++++++++++++
 1 file changed, 13 insertions(+)
kvm-xfstests/test-appliance/files/root/fs/ext4/config +13 -0
index 66d2633..23e869c 100644
@@ -36,6 +36,19 @@ function setup_mount_opts()
     if test -n "$MNTOPTS" ; then
 	EXT_MOUNT_OPTIONS="$EXT_MOUNT_OPTIONS,$MNTOPTS"
     fi
+    if echo "$EXT_MOUNT_OPTIONS" | grep -q test_dummy_encryption; then
+	# Create a new session keyring and add a default master key to it.
+	keyctl new_session > /dev/null
+	local mode='\x00\x00\x00\x00'
+	local raw="$(printf '\\x%02x' $(seq 0 63))"
+	if lscpu | grep -q '^Byte Order:[[:space:]]\+Little Endian$'; then
+	    local size='\x40\x00\x00\x00'
+	else
+	    local size='\x00\x00\x00\x40'
+	fi
+	echo -n -e "${mode}${raw}${size}" | \
+		keyctl padd logon ext4:4242424242424242 @s > /dev/null
+    fi
 }
 
 function get_mkfs_opts()
Signature · 1 line
2.11.0.483.g087da7b7c-goog
#1 lore raw
Quoted 10 lines · Eric Biggers

From: Eric Biggers <[email protected]>

We can improve test coverage and simplify the test_dummy_encryption kernel logic by requiring userspace to add a default master key to the keyring. Update xfstests-bld to do this. This allows xfstests-bld to test kernels with the corresponding kernel patch applied ("fscrypt: make test_dummy_encryption require a keyring key"). It can still test older kernels too; the key just doesn't get used in that case.

This is upstream already. (commit: ce7ef24b3ef1940)

- Ted

#2 lore raw
Quoted 10 lines · Theodore Ts'o
Quoted 9 lines · Eric Biggers

From: Eric Biggers <[email protected]>

We can improve test coverage and simplify the test_dummy_encryption kernel logic by requiring userspace to add a default master key to the keyring. Update xfstests-bld to do this. This allows xfstests-bld to test kernels with the corresponding kernel patch applied ("fscrypt: make test_dummy_encryption require a keyring key"). It can still test older kernels too; the key just doesn't get used in that case.

Quoted 5 lines
Quoted 1 line

This is upstream already. (commit: ce7ef24b3ef1940)

- Ted

I don't see it. Can you push out what you have, to both the kernel.org and github repositories?

Eric

#3 lore raw
Quoted 11 lines · Eric Biggers
Quoted 10 lines · Theodore Ts'o
Quoted 9 lines · Eric Biggers

From: Eric Biggers <[email protected]>

We can improve test coverage and simplify the test_dummy_encryption kernel logic by requiring userspace to add a default master key to the keyring. Update xfstests-bld to do this. This allows xfstests-bld to test kernels with the corresponding kernel patch applied ("fscrypt: make test_dummy_encryption require a keyring key"). It can still test older kernels too; the key just doesn't get used in that case.

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

This is upstream already. (commit: ce7ef24b3ef1940)

- Ted

I don't see it. Can you push out what you have, to both the kernel.org and github repositories?

Done. (I thought I had, but looks like I had only pushed it out to github somehow).

- Ted