]> CyberLeo.Net >> Repos - FreeBSD/releng/10.2.git/blob - contrib/pjdfstest/tests/ftruncate/10.t
- Copy stable/10@285827 to releng/10.2 in preparation for 10.2-RC1
[FreeBSD/releng/10.2.git] / contrib / pjdfstest / tests / ftruncate / 10.t
1 #!/bin/sh
2 # $FreeBSD: head/tools/regression/pjdfstest/tests/truncate/10.t 211352 2010-08-15 21:24:17Z pjd $
3
4 desc="truncate returns EROFS if the named file resides on a read-only file system"
5
6 dir=`dirname $0`
7 . ${dir}/../misc.sh
8
9 [ "${os}:${fs}" = "FreeBSD:UFS" ] || quick_exit
10
11 echo "1..10"
12
13 n0=`namegen`
14 n1=`namegen`
15
16 expect 0 mkdir ${n0} 0755
17 n=`mdconfig -a -n -t malloc -s 1m` || exit
18 newfs /dev/md${n} >/dev/null || exit
19 mount /dev/md${n} ${n0} || exit
20 expect 0 create ${n0}/${n1} 0644
21 expect 0 truncate ${n0}/${n1} 123
22 expect 123 stat ${n0}/${n1} size
23 mount -ur /dev/md${n}
24 expect EROFS truncate ${n0}/${n1} 1234
25 expect 123 stat ${n0}/${n1} size
26 mount -uw /dev/md${n}
27 expect 0 truncate ${n0}/${n1} 1234
28 expect 1234 stat ${n0}/${n1} size
29 expect 0 unlink ${n0}/${n1}
30 umount /dev/md${n}
31 mdconfig -d -u ${n} || exit
32 expect 0 rmdir ${n0}