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?


--
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