Corinna Vinschen <corinna-cygwin <at> cygwin.com> writes:
> You don't have to move them away.  Just set nsswitch.conf.

Did that and using the snapshot DLL from 2014-03-05 on top of a full
snapshot install from 2014-03-10.  The ACL is this:

# file: x86
# owner: gratz
# group: Domain Users
user::---
group::---
group:admin-cygwinupload:rwx
group:user-cygwinupload:rwx
mask:rwx
other:---
default:user::---
default:group::---
default:group:admin-cygwinupload:rwx
default:group:user-cygwinupload:rwx
default:mask:rwx
default:other:---

With the original passwd and group file in place and nsswitch.conf set to
either "files" or "files db" the test fails.  With just "files" getfacl
doesn't show the group ACL at all, while with "files db" I see the ACL for
both the admin and the user group (both are not in the group file).  Setting
to just "db" the ACL is shown as before and the test from Perl now succeeds!
 In fact any combination that includes "files" fails.  So, after some head
scratching I changed the uid and gid in the passwd and group files to match
the new mapping scheme and lo and behold the test is now working.  The
getfacl command starts to show the group ACL when I add them to the group
file (with the correct gid mapping), but the test still fails with "files"
only.  With the correct group entries and "files db", the test also works.

So, Perl somehow uses the gid/uid mapping and relies on those to be working,
while bash uses a code path that doesn't and probably just uses the uid/gid
directly.  I guess I could make the "files" only case work by adding some
more groups (no time for checking what that might be at the moment), again
changing the mapping (will mkpasswd do this at some point?).  Do you still
need traces or does get you a test case that works in your environment?


Regards,
Achim.


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

Reply via email to