]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/pjdfstest/tests/link/15.t
MFV: r335802
[FreeBSD/FreeBSD.git] / contrib / pjdfstest / tests / link / 15.t
1 #!/bin/sh
2 # vim: filetype=sh noexpandtab ts=8 sw=8
3 # $FreeBSD: head/tools/regression/pjdfstest/tests/link/15.t 211352 2010-08-15 21:24:17Z pjd $
4
5 desc="link returns ENOSPC if the directory in which the entry for the new link is being placed cannot be extended because there is no space left on the file system containing the directory"
6
7 dir=`dirname $0`
8 . ${dir}/../misc.sh
9
10 [ "${os}:${fs}" = "FreeBSD:UFS" ] || quick_exit
11
12 echo "1..4"
13
14 n0=`namegen`
15 n1=`namegen`
16 n2=`namegen`
17
18 expect 0 mkdir ${n0} 0755
19 n=`mdconfig -a -n -t malloc -s 512k` || exit
20 newfs /dev/md${n} >/dev/null || exit
21 mount /dev/md${n} ${n0} || exit
22 expect 0 create ${n0}/${n1} 0644
23 i=0
24 while :; do
25         link ${n0}/${n1} ${n0}/${i} >/dev/null 2>&1
26         if [ $? -ne 0 ]; then
27                 break
28         fi
29         i=`expr $i + 1`
30 done
31 expect ENOSPC link ${n0}/${n1} ${n0}/${n2}
32 umount /dev/md${n}
33 mdconfig -d -u ${n} || exit
34 expect 0 rmdir ${n0}