1test_description="mke2fs with error behavior" 2 3conf=$TMPFILE.conf 4write_defaults_conf() 5{ 6 errors="$1" 7 cat > $conf << ENDL 8[defaults] 9 errors = $errors 10ENDL 11} 12 13write_section_conf() 14{ 15 errors="$1" 16 cat > $conf << ENDL 17[defaults] 18 errors = broken 19 20[fs_types] 21 test_suite = { 22 errors = $errors 23 } 24ENDL 25} 26 27trap "rm -f $TMPFILE $TMPFILE.conf" EXIT INT QUIT 28dd if=/dev/zero of=$TMPFILE bs=1k count=512 > /dev/null 2>&1 29OUT=$test_name.log 30EXP=$test_dir/expect 31rm -f $OUT 32 33# Test command line option 34echo "error default" >> $OUT 35$MKE2FS -F $TMPFILE > /dev/null 2>&1 36$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 37 38echo "error continue" >> $OUT 39$MKE2FS -e continue -F $TMPFILE > /dev/null 2>&1 40$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 41 42echo "error panic" >> $OUT 43$MKE2FS -e panic -F $TMPFILE > /dev/null 2>&1 44$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 45 46echo "error remount-ro" >> $OUT 47$MKE2FS -e remount-ro -F $TMPFILE > /dev/null 2>&1 48$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 49 50echo "error garbage" >> $OUT 51dd if=/dev/zero of=$TMPFILE bs=1k count=512 > /dev/null 2>&1 52$MKE2FS -e broken -F $TMPFILE > /dev/null 2>&1 53$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 54 55# Test errors= in default 56echo "error default profile continue" >> $OUT 57write_defaults_conf continue 58MKE2FS_CONFIG=$conf $MKE2FS -F $TMPFILE > /dev/null 2>&1 59$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 60 61echo "error default profile panic" >> $OUT 62write_defaults_conf panic 63MKE2FS_CONFIG=$conf $MKE2FS -F $TMPFILE > /dev/null 2>&1 64$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 65 66echo "error default profile remount-ro" >> $OUT 67write_defaults_conf remount-ro 68MKE2FS_CONFIG=$conf $MKE2FS -F $TMPFILE > /dev/null 2>&1 69$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 70 71echo "error default profile broken" >> $OUT 72write_defaults_conf broken 73dd if=/dev/zero of=$TMPFILE bs=1k count=512 > /dev/null 2>&1 74MKE2FS_CONFIG=$conf $MKE2FS -F $TMPFILE > /dev/null 2>&1 75$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 76 77# Test errors= in a fs type 78echo "error fs_types profile continue" >> $OUT 79write_section_conf continue 80MKE2FS_CONFIG=$conf $MKE2FS -T test_suite -F $TMPFILE > /dev/null 2>&1 81$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 82 83echo "error fs_types profile panic" >> $OUT 84write_section_conf panic 85MKE2FS_CONFIG=$conf $MKE2FS -T test_suite -F $TMPFILE > /dev/null 2>&1 86$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 87 88echo "error fs_types profile remount-ro" >> $OUT 89write_section_conf remount-ro 90MKE2FS_CONFIG=$conf $MKE2FS -T test_suite -F $TMPFILE > /dev/null 2>&1 91$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 92 93# Test command line override 94echo "error fs_types profile remount-ro" >> $OUT 95write_section_conf remount-ro 96MKE2FS_CONFIG=$conf $MKE2FS -T test_suite -e panic -F $TMPFILE > /dev/null 2>&1 97$DUMPE2FS $TMPFILE 2>&1 | grep 'Errors behavior' >> $OUT 98 99cmp -s $OUT $EXP 100status=$? 101 102if [ "$status" = 0 ] ; then 103 echo "$test_name: $test_description: ok" 104 touch $test_name.ok 105else 106 echo "$test_name: $test_description: failed" 107 diff $DIFF_OPTS $EXP $OUT > $test_name.failed 108 rm -f $test_name.tmp 109fi 110 111