diff options
Diffstat (limited to 'tests/ubifs_tools-tests')
| -rw-r--r-- | tests/ubifs_tools-tests/Makemodule.am | 3 | ||||
| -rwxr-xr-x | tests/ubifs_tools-tests/fsck_tests/authentication_refuse.sh.in | 66 | 
2 files changed, 68 insertions, 1 deletions
| diff --git a/tests/ubifs_tools-tests/Makemodule.am b/tests/ubifs_tools-tests/Makemodule.am index 265c9cc..6b53398 100644 --- a/tests/ubifs_tools-tests/Makemodule.am +++ b/tests/ubifs_tools-tests/Makemodule.am @@ -1,2 +1,3 @@  test_SCRIPTS += \ -	tests/ubifs_tools-tests/lib/common.sh +	tests/ubifs_tools-tests/lib/common.sh \ +	tests/ubifs_tools-tests/fsck_tests/authentication_refuse.sh diff --git a/tests/ubifs_tools-tests/fsck_tests/authentication_refuse.sh.in b/tests/ubifs_tools-tests/fsck_tests/authentication_refuse.sh.in new file mode 100755 index 0000000..268a7de --- /dev/null +++ b/tests/ubifs_tools-tests/fsck_tests/authentication_refuse.sh.in @@ -0,0 +1,66 @@ +#!/bin/sh +# Copyright (c), 2024, Huawei Technologies Co, Ltd. +# Author: Zhihao Cheng <chengzhihao1@huawei.com> +# +# Test Description: +# Refuse checking authenticated UBIFS image +# Running time: 10s + +TESTBINDIR=@TESTBINDIR@ +source $TESTBINDIR/common.sh + +ID="0xec,0xa1,0x00,0x15" # 128M 128KB 2KB 512-sub-page + +function run_test() +{ +	echo "Do authentication_refused test" + +	modprobe nandsim id_bytes=$ID +	mtdnum="$(find_mtd_device "$nandsim_patt")" +	flash_eraseall /dev/mtd$mtdnum + +	modprobe ubi mtd="$mtdnum,2048" || fatal "modprobe ubi fail" +	ubimkvol -N vol_test -m -n 0 /dev/ubi$UBI_NUM || fatal "mkvol fail" +	modprobe ubifs || fatal "modprobe ubifs fail" + +	mount_ubifs $DEV $MNT "authentication" || fatal "mount ubifs failed" +	fsstress -d $MNT/fsstress -l0 -p4 -n10000 & +	sleep $((RANDOM % 5)) + +	ps -e | grep -w fsstress > /dev/null 2>&1 +	while [ $? -eq 0 ] +	do +		killall -9 fsstress > /dev/null 2>&1 +		sleep 1 +		ps -e | grep -w fsstress > /dev/null 2>&1 +	done + +	while true +	do +		res=`mount | grep "$MNT"` +		if [[ "$res" == "" ]] +		then +			break; +		fi +		umount $MNT +		sleep 0.1 +	done + +	fsck.ubifs -a $DEV # 'fsck.ubifs $DEV' is fine too. +	res=$? +	if [[ $res == $FSCK_OK ]] +	then +		fatal "fsck should not be success!" +	fi + +	modprobe -r ubifs +	modprobe -r ubi +	modprobe -r nandsim +} + +start_t=$(date +%s) +run_test +end_t=$(date +%s) +time_cost=$(( end_t - start_t )) +echo "Success, cost $time_cost seconds" +exit 0 | 
