* fhandler.cc (fhandler_disk_file::open): Check for allow_ntsec
when determining exec flag.
* path.cc (symlink_info::check): Remove call to get_file_attribute().
* security.cc (read_sd): Rename, ditto for variables to conform
to common naming convention. Use GetFileSecurity() instead of
BackupRead() to avoid permission problems when reading ACLs.
(write_sd): Same renaming as for read_sd().
(alloc_sd): Change default permissions according to Linux permissions
for group and world when write permission is set.
* syscalls.cc (stat_worker): Avoid different permission problems
when requesting file informations.
This commit is contained in:
@@ -2186,17 +2186,6 @@ symlink_info::check (const char *in_path, const suffix_info *suffixes)
|
||||
if (!(pflags & PATH_SYMLINK) && !SYMLINKATTR (fileattr))
|
||||
goto file_not_symlink;
|
||||
|
||||
/* Check the file's extended attributes, if it has any. */
|
||||
int unixattr = 0;
|
||||
if (fileattr & FILE_ATTRIBUTE_DIRECTORY)
|
||||
unixattr |= S_IFDIR;
|
||||
|
||||
if (!get_file_attribute (TRUE, path, &unixattr))
|
||||
{
|
||||
if (unixattr & STD_XBITS)
|
||||
pflags |= PATH_EXEC;
|
||||
}
|
||||
|
||||
/* Open the file. */
|
||||
|
||||
h = CreateFileA (path, GENERIC_READ, FILE_SHARE_READ, &sec_none_nih, OPEN_EXISTING,
|
||||
|
||||
Reference in New Issue
Block a user