mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
797e625f28
And into tests/generic. Tests were found simply by grepping for the __supported_fs field in the tests. Output starts to look like: $ sudo ./check -g quick -r FSTYP -- xfs (debug) PLATFORM -- Linux/x86_64 test-1 3.5.0-rc5-dgc+ MKFS_OPTIONS -- -f -bsize=4096 /dev/vdb MOUNT_OPTIONS -- /dev/vdb /mnt/scratch ./242 1s ./183 2s generic/236 1s generic/014 1s generic/258 0s ./096 1s generic/245 0s ^C Ran: ./242 ./183 generic/236 generic/014 generic/258 ./096 generic/245 Passed all 7 tests Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Phil White <pwhite@sgi.com> [rjohnston@sgi.com added TOT changes] Signed-off-by: Rich Johnston <rjohnston@sgi.com>
216 lines
4.8 KiB
Plaintext
216 lines
4.8 KiB
Plaintext
QA output created by 099
|
|
|
|
=== Test minimal ACE ===
|
|
Setup file
|
|
-rwxrw-r-- id1 id2 file1
|
|
|
|
--- Test get and set of ACL ---
|
|
Note: IRIX interface gave an empty ACL - Linux outputs an ACL
|
|
file1 []
|
|
Try using single colon separator
|
|
Note: IRIX interface FAILs because of single colon - Linux one allows it
|
|
chacl: "u::r--,g::rwx,o:rw-" is an invalid ACL specification.
|
|
Expect to PASS
|
|
file1 [u::r--,g::rwx,o::rw-]
|
|
|
|
--- Test sync of ACL with std permissions ---
|
|
-r--rwxrw-+ id1 id2 file1
|
|
-rw-rwxrw-+ id1 id2 file1
|
|
file1 [u::rw-,g::rwx,o::rw-]
|
|
|
|
--- Test owner permissions ---
|
|
file1 [u::r-x,g::---,o::---]
|
|
Expect to PASS
|
|
Test was executed
|
|
Expect to FAIL
|
|
./file1: Permission denied
|
|
|
|
--- Test group permissions ---
|
|
file1 [u::---,g::r-x,o::---]
|
|
Expect to FAIL - acl1 is owner
|
|
./file1: Permission denied
|
|
Expect to PASS - acl2 matches group
|
|
Test was executed
|
|
Expect to PASS - acl2 matches sup group
|
|
Test was executed
|
|
Expect to FAIL - acl3 is not in group
|
|
./file1: Permission denied
|
|
|
|
--- Test other permissions ---
|
|
file1 [u::---,g::---,o::r-x]
|
|
Expect to FAIL - acl1 is owner
|
|
./file1: Permission denied
|
|
Expect to FAIL - acl2 is in group
|
|
./file1: Permission denied
|
|
Expect to FAIL - acl2 is in sup. group
|
|
./file1: Permission denied
|
|
Expect to PASS - acl3 is not owner or in group
|
|
Test was executed
|
|
|
|
=== Test Extended ACLs ===
|
|
|
|
--- Test adding a USER ACE ---
|
|
Expect to FAIL as no MASK provided
|
|
chacl: error setting access acl on "file1":Invalid argument
|
|
Ensure that ACL has not been changed
|
|
file1 [u::---,g::---,o::r-x]
|
|
Expect to PASS - USER ACE matches user
|
|
file1 [u::---,g::---,o::---,u:id2:r-x,m::rwx]
|
|
Test was executed
|
|
Expect to FAIL - USER ACE does not match user
|
|
./file1: Permission denied
|
|
|
|
--- Test adding a GROUP ACE ---
|
|
Expect to FAIL as no MASK provided
|
|
chacl: error setting access acl on "file1":Invalid argument
|
|
Ensure that ACL has not been changed
|
|
file1 [u::---,g::---,o::---,u:id2:r-x,m::rwx]
|
|
file1 [u::---,g::---,o::---,g:id2:r-x,m::rwx]
|
|
Expect to PASS - GROUP ACE matches group
|
|
Test was executed
|
|
Expect to PASS - GROUP ACE matches sup group
|
|
Test was executed
|
|
Expect to FAIL - GROUP ACE does not match group
|
|
./file1: Permission denied
|
|
|
|
--- Test MASK ---
|
|
file1 [u::---,g::---,o::---,g:id2:r-x,m::-w-]
|
|
Expect to FAIL as MASK prohibits execution
|
|
./file1: Permission denied
|
|
Expect to FAIL as MASK prohibits execution
|
|
./file1: Permission denied
|
|
Expect to PASS as MASK allows execution
|
|
Test was executed
|
|
|
|
--- Test ACE priority ---
|
|
Expect to FAIL as should match on owner
|
|
./file1: Permission denied
|
|
Expect to PASS as should match on user
|
|
Test was executed
|
|
|
|
=== Test can read ACLs without access permissions ===
|
|
file1 [o::---,g::---,u::---]
|
|
|
|
=== Test Default ACLs ===
|
|
acldir [u::rwx,g::rwx,o::rwx/u::r-x,g::r--,o::---]
|
|
-r--r-----+ 0 0 file2
|
|
file2 [u::r--,g::r--,o::---]
|
|
-r--r-----+ 0 0 file3
|
|
file3 [u::r--,g::r--,o::---]
|
|
|
|
=== Removing ACLs ===
|
|
file1 [o::---,g::---,u::---]
|
|
acldir [u::rwx,g::rwx,o::rwx/u::r-x,g::r--,o::---]
|
|
acldir/file2 [u::r--,g::r--,o::---]
|
|
Remove ACLs...
|
|
Note: IRIX interface would mean empty ACLs - Linux would show mode ACLs
|
|
file1 []
|
|
acldir []
|
|
acldir/file2 []
|
|
|
|
=== Test out error messages for ACL text parsing ===
|
|
+ chacl u file1
|
|
chacl: "u" is an invalid ACL specification.
|
|
+ chacl u: file1
|
|
chacl: "u:" is an invalid ACL specification.
|
|
+ chacl u:rumpledumpleunknownuser file1
|
|
chacl: "u:rumpledumpleunknownuser" is an invalid ACL specification.
|
|
+ chacl u:rumpledumpleunknownuser: file1
|
|
chacl: "u:rumpledumpleunknownuser:" is an invalid ACL specification.
|
|
+ chacl g:rumpledumpleunknowngrp file1
|
|
chacl: "g:rumpledumpleunknowngrp" is an invalid ACL specification.
|
|
+ chacl g:rumpledumpleunknowngrp: file1
|
|
chacl: "g:rumpledumpleunknowngrp:" is an invalid ACL specification.
|
|
+ chacl o:user1:rwx file1
|
|
chacl: "o:user1:rwx" is an invalid ACL specification.
|
|
+ chacl m:user1:rwx file1
|
|
chacl: "m:user1:rwx" is an invalid ACL specification.
|
|
+ chacl a::rwx file1
|
|
chacl: "a::rwx" is an invalid ACL specification.
|
|
|
|
=== Test out large ACLs ===
|
|
1 below xfs acl max
|
|
largeaclfile
|
|
user::rwx
|
|
group::rwx
|
|
other::rwx
|
|
mask::rwx
|
|
user:20:rwx
|
|
user:19:rwx
|
|
user:18:rwx
|
|
user:17:rwx
|
|
user:16:rwx
|
|
user:15:rwx
|
|
user:14:rwx
|
|
user:13:rwx
|
|
user:12:rwx
|
|
user:11:rwx
|
|
user:10:rwx
|
|
user:9:rwx
|
|
user:8:rwx
|
|
user:7:rwx
|
|
user:6:rwx
|
|
user:5:rwx
|
|
user:4:rwx
|
|
user:3:rwx
|
|
user:2:rwx
|
|
user:1:rwx
|
|
|
|
xfs acl max
|
|
largeaclfile
|
|
user::rwx
|
|
group::rwx
|
|
other::rwx
|
|
mask::rwx
|
|
user:21:rwx
|
|
user:20:rwx
|
|
user:19:rwx
|
|
user:18:rwx
|
|
user:17:rwx
|
|
user:16:rwx
|
|
user:15:rwx
|
|
user:14:rwx
|
|
user:13:rwx
|
|
user:12:rwx
|
|
user:11:rwx
|
|
user:10:rwx
|
|
user:9:rwx
|
|
user:8:rwx
|
|
user:7:rwx
|
|
user:6:rwx
|
|
user:5:rwx
|
|
user:4:rwx
|
|
user:3:rwx
|
|
user:2:rwx
|
|
user:1:rwx
|
|
|
|
1 above xfs acl max
|
|
chacl: error setting access acl on "largeaclfile":Error 0
|
|
largeaclfile
|
|
user::rwx
|
|
group::rwx
|
|
other::rwx
|
|
mask::rwx
|
|
user:21:rwx
|
|
user:20:rwx
|
|
user:19:rwx
|
|
user:18:rwx
|
|
user:17:rwx
|
|
user:16:rwx
|
|
user:15:rwx
|
|
user:14:rwx
|
|
user:13:rwx
|
|
user:12:rwx
|
|
user:11:rwx
|
|
user:10:rwx
|
|
user:9:rwx
|
|
user:8:rwx
|
|
user:7:rwx
|
|
user:6:rwx
|
|
user:5:rwx
|
|
user:4:rwx
|
|
user:3:rwx
|
|
user:2:rwx
|
|
user:1:rwx
|
|
|