aboutsummaryrefslogtreecommitdiff
path: root/winsup/cygwin/path.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2000-12-19 19:52:57 +0000
committerCorinna Vinschen <corinna@vinschen.de>2000-12-19 19:52:57 +0000
commit5827f4d98ae9e6f32ed2e20ef647ea0b489ee330 (patch)
treea344c9360ed8f1dc9d4ecfd97c8b35dc4ab6a44d /winsup/cygwin/path.cc
parent4f9558507059ed3b99bcd13819ee228fab751514 (diff)
downloadnewlib-5827f4d98ae9e6f32ed2e20ef647ea0b489ee330.zip
newlib-5827f4d98ae9e6f32ed2e20ef647ea0b489ee330.tar.gz
newlib-5827f4d98ae9e6f32ed2e20ef647ea0b489ee330.tar.bz2
* environ.cc (struct parse_thing): Add entry for new CYGWIN option
`smbntsec'. * path.cc (path_conv::check): Check path for being a remote path. If so and `allow_smbntsec' is set to FALSE, set has_acls to FALSE. * security.cc: Add global definition for `allow_smbntsec'. * security.h: Add extern declaration for `allow_smbntsec'. * fhandler.cc (fhandler_disk_file::open): Eliminate extern declaration of `allow_ntsec'. * syscalls.cc: Ditto.
Diffstat (limited to 'winsup/cygwin/path.cc')
-rw-r--r--winsup/cygwin/path.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc
index 69f6071..d86f194 100644
--- a/winsup/cygwin/path.cc
+++ b/winsup/cygwin/path.cc
@@ -405,7 +405,12 @@ out:
{
debug_printf ("GetVolumeInformation(%s) = OK, full_path(%s), set_has_acls(%d)",
tmp_buf, full_path, volflags & FS_PERSISTENT_ACLS);
- set_has_acls (volflags & FS_PERSISTENT_ACLS);
+ if (!allow_smbntsec
+ && ((tmp_buf[0] == '\\' && tmp_buf[1] == '\\')
+ || GetDriveType (tmp_buf) == DRIVE_REMOTE))
+ set_has_acls (FALSE);
+ else
+ set_has_acls (volflags & FS_PERSISTENT_ACLS);
/* Known file systems with buggy open calls. Further explanation
in fhandler.cc (fhandler_disk_file::open). */
set_has_buggy_open (strcmp (fs_name, "SUNWNFS") == 0);