From b5225a3a5f4aaa62017d215988f0c9d48728099e Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Tue, 6 Sep 2011 12:05:45 +0200 Subject: [PATCH] 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. --- ChangeLog | 7 +++++++ tests/test-sameacls.c | 8 ++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5d5a4788d..176aff98b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2011-09-06 Bruno Haible + 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. + +2011-09-06 Bruno Haible + acl: Update for AIX >= 5.3 with NFS. * lib/file-has-acl.c (file_has_acl): Interpret aclx_get failure with ENOSYS as no ACL. diff --git a/tests/test-sameacls.c b/tests/test-sameacls.c index 848af20ec..421f841c8 100644 --- a/tests/test-sameacls.c +++ b/tests/test-sameacls.c @@ -227,7 +227,11 @@ main (int argc, char *argv[]) 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 @@ main (int argc, char *argv[]) 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); -- 2.11.0