On most modern systems like GNU/Linux, read(2)-ing from a directory file
descriptor will fail with EISDIR, but it succeeds e.g. on GNU/Hurd and
AIX-7.1/AIX-7.2.

tests/find/files0-from.sh: Skip the test case excercising a directory
argument for the -files0-from option when the system allows reading
from a directory.
---
 tests/find/files0-from.sh | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/tests/find/files0-from.sh b/tests/find/files0-from.sh
index 4864a866..dfea8616 100755
--- a/tests/find/files0-from.sh
+++ b/tests/find/files0-from.sh
@@ -89,9 +89,14 @@ if test -e $f && test '!' -r $f; then
 fi
 
 # Exercise a directory argument.
-returns_ 1 find -files0-from / > out 2> err \
-  && grep 'read error' err \
-  || { grep . out err; fail=1; }
+# On most modern systems like GNU/Linux, read(2)-ing from a directory file
+# descriptor will fail with EISDIR.  Skip on other plaforms where that 
succeeds,
+# e.g. on GNU/Hurd and AIX.
+if returns_ 1 cat / >/dev/null; then
+  returns_ 1 find -files0-from / > out 2> err \
+    && grep 'read error' err \
+    || { grep . out err; fail=1; }
+fi
 
 # Exercise an empty input file.
 find -files0-from /dev/null > out 2> err || fail=1
-- 
2.34.1


Reply via email to