tests: avoid false failures with default ACLs

To reproduce:
  setfacl -dm group::rx .
  setfacl -dm other::rx .
  make check

* init.cfg (require_no_default_acl_): A new function to skip
when default ACLs are detected, or if the getfacl utility is
not available then skip if any non LSM ACLs detected.
* tests/cp/existing-perm-race.sh: Call require_no_default_acl_.
* tests/mkdir/parents.sh: Likewise.
* tests/mkdir/perm.sh: Likewise.
This commit is contained in:
Pádraig Brady 2015-10-14 15:18:34 +01:00
parent e6b3af647d
commit f9fb9acb0d
4 changed files with 13 additions and 0 deletions

View File

@ -60,6 +60,15 @@ getlimits_()
test "$INT_MAX" || fatal_ "running getlimits"
}
require_no_default_acl_()
{
if getfacl --version < /dev/null > /dev/null 2>&1; then
getfacl "$1" | grep '^default:' && skip_ 'Default ACL detected'
else
ls -ld "$1" | grep '.........+' && skip_ 'ACL detected'
fi
}
require_acl_()
{
getfacl --version < /dev/null > /dev/null 2>&1 \

View File

@ -24,6 +24,8 @@ require_membership_in_two_groups_
# cp -p gives ENOTSUP on NFS on Linux 2.6.9 at least
require_local_dir_
require_no_default_acl_ .
set _ $groups; shift
g1=$1
g2=$2

View File

@ -19,6 +19,7 @@
. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
print_ver_ mkdir
skip_if_setgid_
require_no_default_acl_ .
mkdir -m 700 e-dir || framework_failure_

View File

@ -20,6 +20,7 @@
. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
print_ver_ mkdir
skip_if_setgid_
require_no_default_acl_ .
working_umask_or_skip_