* 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