08.t revision 166065
1#!/bin/sh
2# $FreeBSD: head/tools/regression/fstest/tests/chmod/08.t 166065 2007-01-17 01:42:12Z pjd $
3
4desc="chmod returns EPERM if the named file has its immutable or append-only flag set"
5
6dir=`dirname $0`
7. ${dir}/../misc.sh
8
9require chflags
10
11echo "1..40"
12
13n0=`namegen`
14
15expect 0 create ${n0} 0644
16expect 0 chflags ${n0} SF_IMMUTABLE
17expect EPERM chmod ${n0} 0600
18expect 0644 stat ${n0} mode
19expect 0 chflags ${n0} none
20expect 0 chmod ${n0} 0600
21expect 0 unlink ${n0}
22
23expect 0 create ${n0} 0644
24expect 0 chflags ${n0} UF_IMMUTABLE
25expect EPERM chmod ${n0} 0600
26expect 0644 stat ${n0} mode
27expect 0 chflags ${n0} none
28expect 0 chmod ${n0} 0600
29expect 0 unlink ${n0}
30
31expect 0 create ${n0} 0644
32expect 0 chflags ${n0} SF_APPEND
33expect EPERM chmod ${n0} 0600
34expect 0644 stat ${n0} mode
35expect 0 chflags ${n0} none
36expect 0 chmod ${n0} 0600
37expect 0 unlink ${n0}
38
39expect 0 create ${n0} 0644
40expect 0 chflags ${n0} UF_APPEND
41expect EPERM chmod ${n0} 0600
42expect 0644 stat ${n0} mode
43expect 0 chflags ${n0} none
44expect 0 chmod ${n0} 0600
45expect 0 unlink ${n0}
46
47expect 0 create ${n0} 0644
48expect 0 chflags ${n0} SF_NOUNLINK
49expect 0 chmod ${n0} 0600
50expect 0600 stat ${n0} mode
51expect 0 chflags ${n0} none
52expect 0 unlink ${n0}
53
54expect 0 create ${n0} 0644
55expect 0 chflags ${n0} UF_NOUNLINK
56expect 0 chmod ${n0} 0600
57expect 0600 stat ${n0} mode
58expect 0 chflags ${n0} none
59expect 0 unlink ${n0}
60