]> Savannah Git Hosting - gnulib.git/commitdiff
file-has-acl: Update comments regarding Cygwin.
authorBruno Haible <bruno@clisp.org>
Sun, 30 Mar 2025 14:34:40 +0000 (16:34 +0200)
committerBruno Haible <bruno@clisp.org>
Sun, 30 Mar 2025 14:34:59 +0000 (16:34 +0200)
* lib/acl-internal.h (HAVE_ACL_EXTENDED_FILE, acl_extended_file): Add
more comments.

ChangeLog
lib/acl-internal.h

index 58195260cf6e26b730ae2a33f48c9b5868a6ba9b..a611d62e87afbc4036c82634031351dd21b45008 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2025-03-30  Bruno Haible  <bruno@clisp.org>
+
+       file-has-acl: Update comments regarding Cygwin.
+       * lib/acl-internal.h (HAVE_ACL_EXTENDED_FILE, acl_extended_file): Add
+       more comments.
+
 2025-03-29  Bruno Haible  <bruno@clisp.org>
 
        acl-permissions: Update comments regarding NetBSD.
index b32a1cdafd91a269625713f8d34410a4296cb964..cb969e9797e958794a3b67b211988df7a4c49b56 100644 (file)
@@ -118,8 +118,13 @@ rpl_acl_set_fd (int fd, acl_t acl)
 #  endif
 
 /* Linux-specific */
-/* Cygwin >= 2.5 implements this function, but it returns 1 for all
-   directories, thus is unusable.  */
+/* Cygwin >= 2.5 implements acl_extended_file(), but it returns 1 for nearly all
+   directories — for reasons explained in
+   <https://sourceware.org/pipermail/cygwin/2025-March/257762.html> —, thus is
+   unusable.  For the user, 'ls' should not print a '+' sign, indicating the
+   presence of an ACL, for 99,9% of the files; this would not be useful.
+   Therefore, on Cygwin, we ignore the acl_extended_file function and instead
+   use our own acl_access_nontrivial function.  */
 #  if !defined HAVE_ACL_EXTENDED_FILE || defined __CYGWIN__
 #   undef HAVE_ACL_EXTENDED_FILE
 #   define HAVE_ACL_EXTENDED_FILE false