svn commit: r191000 - head/tools/regression/acltools
Edward Tomasz Napierala
trasz at FreeBSD.org
Mon Apr 13 13:51:54 UTC 2009
Author: trasz
Date: Mon Apr 13 13:51:53 2009
New Revision: 191000
URL: http://svn.freebsd.org/changeset/base/191000
Log:
Add a few more regression tests for POSIX.1e ACLs.
Modified:
head/tools/regression/acltools/tools-posix.test
Modified: head/tools/regression/acltools/tools-posix.test
==============================================================================
--- head/tools/regression/acltools/tools-posix.test Mon Apr 13 13:41:44 2009 (r190999)
+++ head/tools/regression/acltools/tools-posix.test Mon Apr 13 13:51:53 2009 (r191000)
@@ -42,6 +42,51 @@ $ getfacl xxx
$ ls -l xxx | cut -d' ' -f1
> -rw-rw-r--+
+# Same as above, but for symlinks.
+$ ln -s xxx lll
+$ getfacl -h lll
+> # file: lll
+> # owner: root
+> # group: wheel
+> user::rwx
+> group::r-x
+> other::r-x
+
+$ getfacl -qh lll
+> user::rwx
+> group::r-x
+> other::r-x
+
+$ getfacl -q lll
+> user::rw-
+> user:42:r--
+> group::r--
+> group:43:-w-
+> mask::rw-
+> other::r--
+
+$ setfacl -hm u:44:x,g:45:w lll
+$ getfacl -h lll
+> # file: lll
+> # owner: root
+> # group: wheel
+> user::rwx
+> user:44:--x
+> group::r-x
+> group:45:-w-
+> mask::rwx
+> other::r-x
+
+# XXX: Why doesn't ls(1) print '+' for symbolic links with ACL set?
+$ ls -l lll | cut -d' ' -f1
+> lrwxrwxr-x
+
+# Check whether the original file is left untouched.
+$ ls -l xxx | cut -d' ' -f1
+> -rw-rw-r--+
+
+$ rm lll
+
# Test removing entries.
$ setfacl -x user:42: xxx
$ getfacl xxx
@@ -173,6 +218,15 @@ $ ls -l nnn xxx yyy zzz | cut -d' ' -f1
> -rw-r--r--+
> -rw-r--r--+
+$ setfacl -bn nnn xxx yyy zzz
+> setfacl: stat() of nnn failed: No such file or directory
+
+$ ls -l nnn xxx yyy zzz | cut -d' ' -f1
+> ls: nnn: No such file or directory
+> -rw-r--r--
+> -rw-r--r--
+> -rw-r--r--
+
$ rm xxx yyy zzz
# Check whether chmod actually does what it should do.
@@ -210,14 +264,21 @@ $ getfacl -q ddd
> group::r-x
> other::r-x
+$ ls -l | grep ddd | cut -d' ' -f1
+> drwxr-xr-x
+
$ getfacl -dq ddd
-$ setfacl -d -m u::rwx,g::rx,o::rx,mask::rwx ddd
+$ setfacl -dm u::rwx,g::rx,o::rx,mask::rwx ddd
$ getfacl -dq ddd
> user::rwx
> group::r-x
> mask::rwx
> other::r-x
+# No change - ls(1) output doesn't take into account default ACLs.
+$ ls -l | grep ddd | cut -d' ' -f1
+> drwxr-xr-x
+
$ setfacl -dm g:42:rwx,u:42:r ddd
$ setfacl -dm g::w ddd
$ getfacl -dq ddd
@@ -236,8 +297,59 @@ $ getfacl -dq ddd
> mask::rw-
> other::r-x
-> # XXX: Test inheritance.
+$ ls -l | grep ddd | cut -d' ' -f1
+> drwxr-xr-x
$ rmdir ddd
$ rm xxx
+# Test inheritance.
+$ mkdir ddd
+
+$ touch ddd/xxx
+$ getfacl -q ddd/xxx
+> user::rw-
+> group::r--
+> other::r--
+
+$ mkdir ddd/ddd
+$ getfacl -q ddd/ddd
+> user::rwx
+> group::r-x
+> other::r-x
+
+$ rmdir ddd/ddd
+$ rm ddd/xxx
+
+$ setfacl -dm u::rwx,g::rx,o::rx,mask::rwx ddd
+$ setfacl -dm g:42:rwx,u:43:r ddd
+$ getfacl -dq ddd
+> user::rwx
+> user:43:r--
+> group::r-x
+> group:42:rwx
+> mask::rwx
+> other::r-x
+
+$ touch ddd/xxx
+$ getfacl -q ddd/xxx
+> user::rw-
+> user:43:r--
+> group::r-x # effective: r--
+> group:42:rwx # effective: r--
+> mask::r--
+> other::r--
+
+$ mkdir ddd/ddd
+$ getfacl -q ddd/ddd
+> user::rwx
+> user:43:r--
+> group::r-x
+> group:42:rwx # effective: r-x
+> mask::r-x
+> other::r-x
+
+$ rmdir ddd/ddd
+$ rm ddd/xxx
+$ rmdir ddd
+
More information about the svn-src-head
mailing list