Jim Meyering wrote: > There was actually one failure on Solaris 10: > > FAIL: test-copy-acl-1.sh (exit: 1) > ================================== > > + test 1 = 0 > + func_tmpdir > + : /var/tmp > tmp=/var/tmp/glj4aWlm > + test -n /var/tmp/glj4aWlm > + test -d /var/tmp/glj4aWlm > + pwd > builddir=/home/1007/gu/meyering/coreutils-8.12.193-72030/gnulib-tests > + cd /home/1007/gu/meyering/coreutils-8.12.193-72030/gnulib-tests > + cd /var/tmp/glj4aWlm > + rm -f tmpfile[0-9] tmpaclout[0-2] > + echo Simple contents > + chmod 600 tmpfile0 > acl_flavor=none > + test -f /sbin/chacl > + func_test_copy tmpfile0 tmpfile1 > + echo Simple contents > + chmod 600 tmpfile1 > + > /home/1007/gu/meyering/coreutils-8.12.193-72030/gnulib-tests/test-copy-acl > tmpfile0 tmpfile1 > + > /home/1007/gu/meyering/coreutils-8.12.193-72030/gnulib-tests/test-sameacls > tmpfile0 tmpfile1 > error accessing the ACLs of file tmpfile0 > Abort - core dumped
I could reproduce it on a Solaris 10 machine with ZFS. This patch fixes it: 2011-09-06 Bruno Haible <br...@clisp.org> acl: Fix a test failure on newer Solaris 10 with ZFS. * tests/test-sameacls.c (main): Interpret acl GETACLCNT failure with ENOSYS as no ACL. Reported by Jim Meyering. --- tests/test-sameacls.c.orig Tue Sep 6 12:04:11 2011 +++ tests/test-sameacls.c Tue Sep 6 11:59:18 2011 @@ -227,7 +227,11 @@ int count2; count1 = acl (file1, GETACLCNT, 0, NULL); + if (count1 < 0 && errno == ENOSYS) /* Can happen on Solaris 10 with ZFS */ + count1 = 0; count2 = acl (file2, GETACLCNT, 0, NULL); + if (count2 < 0 && errno == ENOSYS) /* Can happen on Solaris 10 with ZFS */ + count2 = 0; if (count1 < 0) { @@ -253,13 +257,13 @@ aclent_t *entries2 = XNMALLOC (count2, aclent_t); int i; - if (acl (file1, GETACL, count1, entries1) < count1) + if (count1 > 0 && acl (file1, GETACL, count1, entries1) < count1) { fprintf (stderr, "error retrieving the ACLs of file %s\n", file1); fflush (stderr); abort (); } - if (acl (file2, GETACL, count2, entries2) < count1) + if (count2 > 0 && acl (file2, GETACL, count2, entries2) < count1) { fprintf (stderr, "error retrieving the ACLs of file %s\n", file2); fflush (stderr); -- In memoriam Andre Spitzer <http://en.wikipedia.org/wiki/Andre_Spitzer> Efat Ghazi <http://en.wikipedia.org/wiki/Efat_Ghazi> David Mark Berger <http://en.wikipedia.org/wiki/David_Mark_Berger> Ze'ev Friedman <http://en.wikipedia.org/wiki/Ze'ev_Friedman> Yossef Gutfreund <http://en.wikipedia.org/wiki/Yossef_Gutfreund> Eliezer Halfin <http://en.wikipedia.org/wiki/Eliezer_Halfin> Amitzur Shapira <http://en.wikipedia.org/wiki/Amitzur_Shapira> Kehat Shorr <http://en.wikipedia.org/wiki/Kehat_Shorr> Mark Slavin <http://en.wikipedia.org/wiki/Mark_Slavin> Yakov Springer <http://en.wikipedia.org/wiki/Yakov_Springer>