This is the mail archive of the
mailing list for the Cygwin project.
LDAP integration / ACL in Perl revisited
- From: Achim Gratz <Stromeko at NexGo dot DE>
- To: cygwin at cygwin dot com
- Date: Tue, 24 Jun 2014 12:18:59 +0000 (UTC)
- Subject: LDAP integration / ACL in Perl revisited
- Authentication-results: sourceware.org; auth=none
I've just set up a new machine with Cygwin (64bit w/ the 2014-06-23 13:20:35
snapshot), nsswitch.conf specifies "db" for both passwd and group (the files
have been moved away just to be sure they aren't picked up). I have one
share with somewhat strange ACL that I always had to use via a "noacl" mount
option. I thought I should try again and this is what happened (bla is a
file that has non-zero size and is owned by me):
(1014) > getfacl bla
# file: bla
# owner: gratz
# group: Domain Users
(1015) > [ -r bla ] && echo Hello...
(1018) > perl -E 'say -R "bla" ? "yes" : "no"'
(1016) > perl -E 'say -r "bla" ? "yes" : "no"'
(1017) > perl -E 'say -O "bla" ? "yes" : "no"'
So for whatever reason Perl still doesn't deal correctly with those ACL,
while the shell test operator does. Now the kicker: if I run Perl under
strace, the test succeeds... huh?
26 556465 [main] perl 5712 path_conv::check: this->path(\\share\bla),
34 556499 [main] perl 5712 build_fh_pc: fh 0x18032C9F0, dev 000000C3
27 556526 [main] perl 5712 stat_worker: (\??\UNC\share\bla, 0x600039498,
0x18032C9F0), file_attributes 32
12380 568906 [main] perl 5712 fhandler_base::fstat_helper: 0 = fstat
(\??\UNC\share\bla, 0x600039498) st_size=228, st_mode=0x81A4,
66 568972 [main] perl 5712 stat_worker: 0 = (\??\UNC\share\bla,0x600039498)
3210 572182 [main] perl 5712 fhandler_pty_slave::write: pty0,
27 572209 [main] perl 5712 fhandler_pty_slave::write: (656): pty
output_mutex (0x184): waiting -1 ms
24 572233 [main] perl 5712 fhandler_pty_slave::write: (656): pty
Incredibly, this also works with the original script that led me onto this
hunt. It runs a lot slower with all that stracing going on of course.
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple