From 4f3ccdd518cbea2a34f5a62099bb1ca2881fae9c Mon Sep 17 00:00:00 2001 From: Qu Wenruo Date: Fri, 19 Aug 2016 16:13:06 +0800 Subject: [PATCH] btrfs-progs: convert-test: Check if the ext2_save/image is read only Old convert codes uses both 0400 permission and INODE_READONLY flag to make the converted ext2 image readonly. While new convert treat the inode just as normal inode, with no special inode flag and uses 0600 permission. This makes user able to modify converted image unintentionally and make rollback fails. This test case will test the regression. Signed-off-by: Qu Wenruo Signed-off-by: David Sterba --- .../convert-tests/008-readonly-image/test.sh | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100755 tests/convert-tests/008-readonly-image/test.sh diff --git a/tests/convert-tests/008-readonly-image/test.sh b/tests/convert-tests/008-readonly-image/test.sh new file mode 100755 index 00000000..4e422378 --- /dev/null +++ b/tests/convert-tests/008-readonly-image/test.sh @@ -0,0 +1,26 @@ +#!/bin/bash +# Check if the converted ext2 image is readonly + +source $TOP/tests/common +source $TOP/tests/common.convert + +setup_root_helper +prepare_test_dev 512M +check_prereq btrfs-convert + +default_mke2fs="mke2fs -t ext4 -b 4096" +convert_test_preamble '' 'readonly image test' 16k "$default_mke2fs" +convert_test_prep_fs $default_mke2fs +run_check_umount_test_dev +convert_test_do_convert +run_check_mount_test_dev + +# It's expected to fail +$SUDO_HELPER dd if=/dev/zero of=$TEST_MNT/ext2_save/image bs=1M count=1 \ + &> /dev/null +if [ $? -ne 1 ]; then + echo "after convert ext2_save/image is not read-only" + exit 1 +fi +run_check_umount_test_dev +convert_test_post_rollback