diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2001-08-07 16:14:59 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2001-08-07 16:14:59 +0000 |
commit | c0ae23dc47de2d2ea8fa98b7cca386f0ccf24a07 (patch) | |
tree | 325945d5177a34903918dde2d0e911ea4be3efb7 /winsup/cygwin/dir.cc | |
parent | 86fb0393244e5827070e0bb0328a5b40fe5c0268 (diff) | |
download | cygnal-c0ae23dc47de2d2ea8fa98b7cca386f0ccf24a07.tar.gz cygnal-c0ae23dc47de2d2ea8fa98b7cca386f0ccf24a07.tar.bz2 cygnal-c0ae23dc47de2d2ea8fa98b7cca386f0ccf24a07.zip |
* security.cc (alloc_sd): Don't set FILE_DELETE_CHILD for group
if S_ISVTX attribute is given.
* dir.cc (mkdir): Allow immediate setting of S_ISUID, S_ISGID and
S_ISVTX attribute.
* syscalls.cc (_open): Ditto.
Diffstat (limited to 'winsup/cygwin/dir.cc')
-rw-r--r-- | winsup/cygwin/dir.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/winsup/cygwin/dir.cc b/winsup/cygwin/dir.cc index 022a8d663..e9628b377 100644 --- a/winsup/cygwin/dir.cc +++ b/winsup/cygwin/dir.cc @@ -320,14 +320,14 @@ mkdir (const char *dir, mode_t mode) goto done; if (allow_ntsec && real_dir.has_acls ()) - set_security_attribute (S_IFDIR | ((mode & 0777) & ~cygheap->umask), + set_security_attribute (S_IFDIR | ((mode & 07777) & ~cygheap->umask), &sa, alloca (256), 256); if (CreateDirectoryA (real_dir.get_win32 (), &sa)) { if (!allow_ntsec && allow_ntea) set_file_attribute (real_dir.has_acls (), real_dir.get_win32 (), - S_IFDIR | ((mode & 0777) & ~cygheap->umask)); + S_IFDIR | ((mode & 07777) & ~cygheap->umask)); res = 0; } else |