* fhandler_disk_file.cc (__DIR_mounts::eval_ino): Create path_conv
with PC_KEEP_HANDLE flag. * path.h (path_conv::operator =): Duplicate UNICODE path as well. * security.cc (check_file_access): Use path_conv handle if available. * syscalls.cc (access): Create fhandler with PC_KEEP_HANDLE flag set. (euidaccess): Ditto. (faccessat): Ditto.
This commit is contained in:
@@ -1063,7 +1063,7 @@ check_file_access (path_conv &pc, int flags, bool effective)
|
||||
desired |= FILE_WRITE_DATA;
|
||||
if (flags & X_OK)
|
||||
desired |= FILE_EXECUTE;
|
||||
if (!get_file_sd (NULL, pc, sd, false))
|
||||
if (!get_file_sd (pc.handle (), pc, sd, false))
|
||||
ret = check_access (sd, file_mapping, desired, flags, effective);
|
||||
debug_printf ("flags %x, ret %d", flags, ret);
|
||||
return ret;
|
||||
|
Reference in New Issue
Block a user