Greetings, Norton Allen! > On 6/29/2022 9:18 AM, Norton Allen wrote: >> On 6/29/2022 7:39 AM, Andrey Repin wrote: >>> Greetings, Norton Allen! >>> >>>> On one machine I have, chmod g+s fails to set the sticky bit. The >>> >>>> command >>>> does not return any error, but ls -l continues to show the bit not set. >>>> $ mkdir foo >>>> $ chgrp flight foo >>>> $ chmod g+ws foo >>>> $ ls -ld foo >>>> drwxrwxr-x+ 1 nort flight 0 Jun 29 06:50 foo >>> ----------------^ >>> >>> $ getfacl foo >> >> I will collect this shortly, but IIRC, getfacl showed it was not set. > I >> did see it set there under 'flags' on the system that works.
> nort@EAS-SOFTWAREE1B ~ > $ ls -ld foo > drwxrwxr-x 1 nort flight 0 Jun 29 06:25 foo > nort@EAS-SOFTWAREE1B ~ > $ chmod g+s foo > nort@EAS-SOFTWAREE1B ~ > $ ls -ld foo > drwxrwxr-x 1 nort flight 0 Jun 29 06:25 foo > nort@EAS-SOFTWAREE1B ~ > $ getfacl foo > # file: foo > # owner: nort > # group: flight > user::rwx > group::rwx > other::r-x >> >> >>> >>>> I ran strace, and it looks like the correct system call parameter is >>> >>>> getting passed. >>>> I am curious as to how the sticky bit is implemented. >>> First see if it was set or not. >>> >>>> It isn't obvious what underlying Windows functionality (if any) is >>> >>>> applied. >>> It does. But the big question is, where do you try to do that. >>> If this is inside Cygwin installation root, then things could work >> more >>> or >>> less POSIX'y. If this is outside Cygwin root (f.e. in your system >> >>> profile), it >>> may or may not work completely, depends how did you mount /cygdrive >> >>> prefix. >> >> I will confirm (shortly), but I'm pretty sure these tests were done > under >> vanilla /home (so c:\cygwin64\home) > Confirmed (as shown above). Tested in /home/nort on directory /home/nort/foo >> >> >>> >>>> Ah, just checked on a system where this works, and creating a file >>> in >>>> the >>>> directory from the >>>> command shell does not set the group, so presumably this >>> functionality >>>> is >>>> all within cygwin. That works for my application, except when it >>> >>>> doesn't. >>>> Any suggestions on what I should look for? >>> Look if you could avoid using +s. Isn't DACL enough? >> >> Am I correct that DACL is not available unless I am on a domain? This > is >> for a field computer, so connection to a domain is generally more > >> problematic than helpful. >> > So is this implemented using DACL under the hood? And is that expected to > fail without a domain? DACL means "default ACL" or "directory ACL" (which is essentially the same and meaning ACL's which will be applied to newly created child objects), as in `setfacl -m 'd:g:flight:rwx,d:m::rwx' dir [...]`. -- With best regards, Andrey Repin Friday, July 1, 2022 02:50:30 Sorry for my terrible english... -- 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