]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
tests: avoid root test false failure without libxattr
authorPádraig Brady <P@draigBrady.com>
Thu, 17 Dec 2015 14:42:34 +0000 (14:42 +0000)
committerPádraig Brady <P@draigBrady.com>
Thu, 17 Dec 2015 16:59:46 +0000 (16:59 +0000)
* tests/cp/cp-mv-enotsup-xattr.sh: Exclude xattr copy verification
when libxattr is not available.

tests/cp/cp-mv-enotsup-xattr.sh

index 13f477d64399157b4220b9a3d5a7b79acf218946..b9f2b54663813242aa5afb1f77c1f30643646f1b 100755 (executable)
@@ -1,6 +1,6 @@
 #!/bin/sh
 # Ensure that mv, cp -a and cp --preserve=xattr(all) options do work
-# as expected on file system without their support and do show correct
+# as expected on file systems without their support and do show correct
 # diagnostics when required
 
 # Copyright (C) 2009-2015 Free Software Foundation, Inc.
@@ -85,7 +85,7 @@ compare /dev/null err || fail=1
 
 rm -f err noxattr/a
 
-# This should fail with coresponding diagnostics
+# This should fail with corresponding diagnostics
 cp -a --preserve=xattr xattr/a noxattr/ 2>err && fail=1
 if grep '^#define USE_XATTR 1' $CONFIG_HEADER > /dev/null; then
 cat <<\EOF > exp
@@ -117,8 +117,11 @@ txattr='trusted.overlay.whiteout'
 if setfattr -hn "$txattr" -v y xattr/symlink; then
   # Note only root can read the 'trusted.' namespace
   if getfattr -h -m- -d xattr/symlink | grep -F "$txattr"; then
-    mv xattr/symlink noxattr/ || fail=1
-    getfattr -h -m- -d noxattr/symlink | grep -F "$txattr" || fail=1
+    mv xattr/symlink noxattr/ 2>err || fail=1
+    if grep '^#define USE_XATTR 1' $CONFIG_HEADER > /dev/null; then
+      getfattr -h -m- -d noxattr/symlink | grep -F "$txattr" || fail=1
+    fi
+    compare /dev/null err || fail=1
   else
     echo "failed to get '$txattr' xattr. skipping symlink check" >&2
   fi