iotests/common.rc: Add _require_working_luks
That the luks driver is present is little indication on whether it is actually working. Without the crypto libraries linked in, it does not work. So add this function, which tries to create a luks image to see whether that actually works. Signed-off-by: Max Reitz <mreitz@redhat.com> Message-Id: <20200625125548.870061-4-mreitz@redhat.com> Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com>
This commit is contained in:
parent
cbb32e79dd
commit
dc4ab02919
@ -740,6 +740,33 @@ _unsupported_imgopts()
|
||||
done
|
||||
}
|
||||
|
||||
# Caution: Overwrites $TEST_DIR/t.luks
|
||||
_require_working_luks()
|
||||
{
|
||||
file="$TEST_DIR/t.luks"
|
||||
|
||||
output=$(
|
||||
$QEMU_IMG create -f luks \
|
||||
--object secret,id=sec0,data=hunter0 \
|
||||
-o key-secret=sec0 \
|
||||
-o iter-time=10 \
|
||||
"$file" \
|
||||
1M \
|
||||
2>&1
|
||||
)
|
||||
status=$?
|
||||
|
||||
IMGFMT='luks' _rm_test_img "$file"
|
||||
|
||||
if [ $status != 0 ]; then
|
||||
reason=$(echo "$output" | grep "$file:" | $SED -e "s#.*$file: *##")
|
||||
if [ -z "$reason" ]; then
|
||||
reason="Failed to create a LUKS image"
|
||||
fi
|
||||
_notrun "$reason"
|
||||
fi
|
||||
}
|
||||
|
||||
# this test requires that a specified command (executable) exists
|
||||
#
|
||||
_require_command()
|
||||
|
Loading…
Reference in New Issue
Block a user