From c0ae23dc47de2d2ea8fa98b7cca386f0ccf24a07 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Tue, 7 Aug 2001 16:14:59 +0000 Subject: * 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. --- winsup/cygwin/dir.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'winsup/cygwin/dir.cc') 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 -- cgit v1.2.3