mirror of
https://github.com/winfsp/winfsp.git
synced 2025-06-08 04:52:10 -05:00
dll: fuse: GetSecurityByName: correctly handle "not found" paths with symlinks
This commit is contained in:
parent
deb237f7b0
commit
7d56b9c23d
@ -711,14 +711,16 @@ static NTSTATUS fsp_fuse_intf_GetSecurityByName(FSP_FILE_SYSTEM *FileSystem,
|
|||||||
|
|
||||||
Result = fsp_fuse_intf_GetSecurityEx(FileSystem, PosixPath, 0,
|
Result = fsp_fuse_intf_GetSecurityEx(FileSystem, PosixPath, 0,
|
||||||
PFileAttributes, SecurityDescriptorBuf, PSecurityDescriptorSize);
|
PFileAttributes, SecurityDescriptorBuf, PSecurityDescriptorSize);
|
||||||
if (!NT_SUCCESS(Result))
|
if (!NT_SUCCESS(Result) &&
|
||||||
|
STATUS_OBJECT_NAME_NOT_FOUND != Result &&
|
||||||
|
STATUS_OBJECT_PATH_NOT_FOUND != Result)
|
||||||
goto exit;
|
goto exit;
|
||||||
|
|
||||||
if (FSP_FUSE_HAS_SYMLINKS(f) &&
|
if (FSP_FUSE_HAS_SYMLINKS(f) &&
|
||||||
FspFileSystemFindReparsePoint(FileSystem, fsp_fuse_intf_GetReparsePointByName, 0,
|
FspFileSystemFindReparsePoint(FileSystem, fsp_fuse_intf_GetReparsePointByName, 0,
|
||||||
FileName, PFileAttributes))
|
FileName, PFileAttributes))
|
||||||
Result = STATUS_REPARSE;
|
Result = STATUS_REPARSE;
|
||||||
else
|
else if (NT_SUCCESS(Result))
|
||||||
Result = STATUS_SUCCESS;
|
Result = STATUS_SUCCESS;
|
||||||
|
|
||||||
exit:
|
exit:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user