summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/dir.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2000-05-24 20:09:43 +0000
committerCorinna Vinschen <corinna@vinschen.de>2000-05-24 20:09:43 +0000
commit154110f5d3dc537e4a2154fbf4d3de0b173821d2 (patch)
tree6c5d55b5598533a7ddd412f6c3d34b6cd72bfd10 /winsup/cygwin/dir.cc
parente6dfde6f82dc1a477e8cbfad83548da8a31c1f2c (diff)
downloadcygnal-154110f5d3dc537e4a2154fbf4d3de0b173821d2.tar.gz
cygnal-154110f5d3dc537e4a2154fbf4d3de0b173821d2.tar.bz2
cygnal-154110f5d3dc537e4a2154fbf4d3de0b173821d2.zip
* dir.cc (writable_directory): Comment out previous code,
return always 1 for now. (mkdir): Call set_file_attribute explicitely with S_IFDIR mode bit. * syscalls.cc (chown_worker): Ditto. (chmod): Ditto. * security.cc (get_nt_attribute): Fix error in debug output. Never set FILE_DELETE_CHILD for files. Construct appropriate inherit attribute according to file type.
Diffstat (limited to 'winsup/cygwin/dir.cc')
-rw-r--r--winsup/cygwin/dir.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/winsup/cygwin/dir.cc b/winsup/cygwin/dir.cc
index f3a869cd3..741be8480 100644
--- a/winsup/cygwin/dir.cc
+++ b/winsup/cygwin/dir.cc
@@ -23,6 +23,7 @@ details. */
int __stdcall
writable_directory (const char *file)
{
+#if 0
char dir[strlen (file) + 1];
strcpy (dir, file);
@@ -44,6 +45,9 @@ writable_directory (const char *file)
int acc = access (usedir, W_OK);
return acc == 0;
+#else
+ return 1;
+#endif
}
/* opendir: POSIX 5.1.2.1 */
@@ -297,7 +301,7 @@ mkdir (const char *dir, mode_t mode)
if (CreateDirectoryA (real_dir.get_win32 (), 0))
{
set_file_attribute (real_dir.has_acls (), real_dir.get_win32 (),
- (mode & 0777) & ~myself->umask);
+ S_IFDIR | ((mode & 0777) & ~myself->umask));
res = 0;
}
else