diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2007-07-30 10:58:16 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2007-07-30 10:58:16 +0000 |
commit | 378692ee42bb29280c439600832e84a0ddb7471a (patch) | |
tree | 180947c247b5c35e3bc21bbd5d37dc3edb993291 /winsup/cygwin/sec_acl.cc | |
parent | 73151c54d58148eed83117dfa69f9da404fe53ac (diff) | |
download | cygnal-378692ee42bb29280c439600832e84a0ddb7471a.tar.gz cygnal-378692ee42bb29280c439600832e84a0ddb7471a.tar.bz2 cygnal-378692ee42bb29280c439600832e84a0ddb7471a.zip |
* fhandler_disk_file.cc (fhandler_disk_file::facl): If file can't be
opened for reading the ACLs, fall back to faking them.
* sec_acl.cc (acl_worker): Handle non-existing files.
* security.cc (get_file_attribute): Return ILLEGAL_UID/ILLEGAL_GID
as owner/group for non-readable ACLs on file systems supporting them.
Diffstat (limited to 'winsup/cygwin/sec_acl.cc')
-rw-r--r-- | winsup/cygwin/sec_acl.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/winsup/cygwin/sec_acl.cc b/winsup/cygwin/sec_acl.cc index 54d443b17..a0c248fd0 100644 --- a/winsup/cygwin/sec_acl.cc +++ b/winsup/cygwin/sec_acl.cc @@ -407,6 +407,8 @@ acl_worker (const char *path, int cmd, int nentries, __aclent32_t *aclbufp, debug_printf ("got %d error from build_fh_name", fh->error ()); set_errno (fh->error ()); } + else if (!fh->exists ()) + set_errno (ENOENT); else res = fh->facl (cmd, nentries, aclbufp); |