---------- Forwarded message ---------
From: Lionel Cons <lionelcons1...@gmail.com>
Date: Mon, 7 Jul 2025 at 09:46
Subject: setfacl -m g:None:rwx nfstmp1 not working for dirs in Cygwin
3.6.3 Re: /usr/bin/setfacl is broken in 3.7.0-0.127.g2029784e05d9
To: <cygwin@cygwin.com>, Corinna Vinschen <corinna-cyg...@cygwin.com>


On Thu, 19 Jun 2025 at 10:54, Lionel Cons <lionelcons1...@gmail.com> wrote:
>
> On Mon, 16 Jun 2025 at 22:57, Brian Inglis via Cygwin <cygwin@cygwin.com> 
> wrote:
> >
> > On 2025-06-16 03:17, Lionel Cons via Cygwin wrote:
> > > On Fri, 13 Jun 2025 at 21:52, Brian Inglis via Cygwin <cygwin@cygwin.com> 
> > > wrote:
> > >>
> > >> On 2025-06-13 06:09, Lionel Cons via Cygwin wrote:
> > >>> /usr/bin/setfacl is broken in 3.7.0-0.127.g2029784e05d9
> > >>>
> > >>> my testcase:
> > >>> lionel$ uname -a
> > >>> CYGWIN_NT-10.0-19045 halcyonrenard17 3.7.0-0.127.g2029784e05d9.x86_64
> > >>> 2025-06-10 12:15 UTC x86_64 Cygwin
> > >>> lionel$ mkdir nfstmp1
> > >>> ionel$ setfacl -m g::rwx nfstmp1
> > >>> setfacl: Permission denied
> > >>> ionel$ setfacl -m g:None:rwx nfstmp1
> > >>> setfacl: Permission denied
> > >>>
> > >>> This was working in Cygwin 3.5
> > >>
> > >> No changes have been made to the utility for five years,
> > >
> > > Are you sure? Isn't this tool part of coreutils?
> >
> > $ cygcheck -f /usr/bin/{g,s}etfacl
> > cygwin-3.6.1-1
> > cygwin-3.6.1-1
> >
> > Apparently mainly based on:
> >
> >         https://man.freebsd.org/cgi/man.cgi?query=setfacl&sektion=1
> >
> >         http://www.trustedbsd.org/acls.html
> >
> > also Linux uses:
> >
> >         https://man7.org/linux/man-pages/man1/setfacl.1.html
> >
> >         http://savannah.nongnu.org/projects/acl
> >
> >         http://savannah.nongnu.org/bugs/?group=acl
> >
> >         "ACL File Utilities"
> >
> > as we have had discussions about man pages missing from the man-pages-linux
> > packages and sources for alternates we could provide, and whether that 
> > would be
> > desirable and adequate.
> >
> > >> but a lot of changes
> > >> have been made to the DLL since 3.5.
> > >>
> > >> Could you please install current stable cygwin 3.6.3, retest and report,
> > >
> > > lionel$ uname -a
> > > CYGWIN_NT-10.0-19045 halcyonrenard17 3.6.3-1.x86_64 2025-06-05 11:45
> > > UTC x86_64 Cygwin
> > > lionel$ setfacl --version
> > > setfacl (cygwin) 3.6.3
> > > POSIX ACL modification utility
> > > Copyright (C) 2000 - 2025 Cygwin Authors
> > > This is free software; see the source for copying conditions.  There is NO
> > > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
> > > PURPOSE.
> > >
> > > ## testing with a file:
> > > lionel$ rm -f myfile && touch myfile && setfacl -m g::rwx myfile
> > > # works
> > >
> > > ## testing with a dir:
> > > lionel$ rm -Rf mydir && mkdir mydir && setfacl -m g::rwx mydir
> > > setfacl: Permission denied
> > >
> > > So in Cygwin 3.6.3 setfacl for files works, but not for dirs
> >
> > Thanks for doing that.
> >
> > One thing we have to watch for is to ensure that DACLs (Default ACLs) are 
> > set on
> > directories so files and subdirectories are accessible, for example:
> >
> >         dacl=d:u::rwx,d:g::r-x,d:o::r-x
> >         ...
> >         setfacl -m$dacl $dir
> >
> > although you would normally also set regular ACLs at the same time to be 
> > sure.
> >
> > So your directory ACLs depend on its parent's DACLs, but there is still an 
> > issue
> > there.
> >
> > I too get:
> >
> >         $ setfacl -m g::rwx test
> >         setfacl: Permission denied
> >
> > but:
> >
> >         $ chmod -c g+rwx test           # works
> >         mode of 'test' changed from 0755 (rwxr-xr-x) to 0775 (rwxrwxr-x)
> >         $ setfacl -m g::rwx test        # works but changes nothing
> > >> to try
> > >> and narrow down the issue occurrence to changes in major version 3.6 or 
> > >> 3.7, or
> > >> better to minor versions if you have the space and time?
> > >
> > > How can I install each Cygwin minor version (not just the Cygwin
> > > *.dll, I mean EVERYTHING including dependencies)?
> >
> > Maybe just cygwin (DLL and utilities) package 3.5.7 and 3.6.0 if you have 
> > time?
>
> Cygwin 3.3 /usr/bin/setfacl.exe works with both dirs and files. Cygwin
> 3.5.7 I can only test when I am back in my office next week :(
>
> @Corinna Vinschen Could you have a look at this issue, please?

This is still broken in Cygwin 3.6.3, and blocks the update to that version:

$ cd "$PWD" # plain NTFS filesystem
$ uname -a
CYGWIN_NT-10.0-19045 halcyonrenard17 3.6.3-1.x86_64 2025-06-05 11:45
UTC x86_64 Cygwin
$ mkdir nfstmp1
$ setfacl -m g:None:rwx nfstmp1
setfacl: Permission denied

"None" can be replaced with any local or domain group

Lionel


-- 
Lionel

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to