diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2004-04-10 20:18:11 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2004-04-10 20:18:11 +0000 |
commit | bb0906507ba558dd43002f7ff1faa7a75c395c82 (patch) | |
tree | 5bce09e6f486107c7ede5981ae027b967f366705 | |
parent | 7224437c6270910a02646147149aaa97de145217 (diff) | |
download | cygnal-bb0906507ba558dd43002f7ff1faa7a75c395c82.tar.gz cygnal-bb0906507ba558dd43002f7ff1faa7a75c395c82.tar.bz2 cygnal-bb0906507ba558dd43002f7ff1faa7a75c395c82.zip |
* sec_acl.cc (setacl): Use correct offset when trying to combine
standard and default entry of same type.
-rw-r--r-- | winsup/cygwin/ChangeLog | 5 | ||||
-rw-r--r-- | winsup/cygwin/sec_acl.cc | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 2af256725..ba99bbf18 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2004-04-10 Corinna Vinschen <corinna@vinschen.de> + + * sec_acl.cc (setacl): Use correct offset when trying to combine + standard and default entry of same type. + 2004-04-10 Pierre Humblet <pierre.humblet@ieee.org> * fhandler.cc (rootdir): Add and use second argument. diff --git a/winsup/cygwin/sec_acl.cc b/winsup/cygwin/sec_acl.cc index 7bcf36cb4..dc2473e9e 100644 --- a/winsup/cygwin/sec_acl.cc +++ b/winsup/cygwin/sec_acl.cc @@ -142,11 +142,11 @@ setacl (const char *file, int nentries, __aclent32_t *aclbufp) aclbufp[i].a_type | ACL_DEFAULT, (aclbufp[i].a_type & (USER|GROUP)) ? aclbufp[i].a_id : ILLEGAL_UID)) >= 0 - && aclbufp[i].a_perm == aclbufp[pos].a_perm) + && aclbufp[i].a_perm == aclbufp[i + 1 + pos].a_perm) { inheritance = SUB_CONTAINERS_AND_OBJECTS_INHERIT; /* This invalidates the corresponding default entry. */ - aclbufp[pos].a_type = USER|GROUP|ACL_DEFAULT; + aclbufp[i + 1 + pos].a_type = USER|GROUP|ACL_DEFAULT; } switch (aclbufp[i].a_type) { |