Improve support for ACLs on OSF/1.
authorBruno Haible <bruno@clisp.org>
Fri, 23 May 2008 11:29:46 +0000 (13:29 +0200)
committerBruno Haible <bruno@clisp.org>
Fri, 23 May 2008 11:29:46 +0000 (13:29 +0200)
ChangeLog
lib/acl.c

index 5bc446d..05cdf1c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-05-23  Bruno Haible  <bruno@clisp.org>
+
+       Improve support for ACLs on OSF/1.
+       * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
+       Remove fallback for unknown flavors of ACLs.
+
 2008-05-22  Bruno Haible  <bruno@clisp.org>
 
        Add support for ACLs on OSF/1.
index 5469db9..a164f0c 100644 (file)
--- a/lib/acl.c
+++ b/lib/acl.c
@@ -83,8 +83,11 @@ qset_acl (char const *name, int desc, mode_t mode)
         would need to create a qualifier.  I don't know how to do this.
         So create it using acl_from_text().  */
 
-#   if (HAVE_ACL_DELETE_FD_NP && HAVE_ACL_DELETE_FILE_NP) || HAVE_ACL_TO_SHORT_TEXT /* FreeBSD, IRIX */
+#   if HAVE_ACL_FREE_TEXT /* Tru64 */
+      char acl_text[] = "u::---,g::---,o::---,";
+#   else /* FreeBSD, IRIX */
       char acl_text[] = "u::---,g::---,o::---";
+#   endif
 
       if (mode & S_IRUSR) acl_text[ 3] = 'r';
       if (mode & S_IWUSR) acl_text[ 4] = 'w';
@@ -99,9 +102,6 @@ qset_acl (char const *name, int desc, mode_t mode)
       acl = acl_from_text (acl_text);
       if (!acl)
        return -1;
-#   else /* Unknown flavor of POSIX-like ACLs */
-      return chmod_or_fchmod (name, desc, mode);
-#   endif
     }
   if (HAVE_ACL_SET_FD && desc != -1)
     ret = acl_set_fd (desc, acl);