dll: fuse: fsp_fuse_intf_AddDirInfo: avoid deadlock with ReaddirPlus and symlinks

This commit is contained in:
Bill Zissimopoulos 2018-04-30 13:31:06 -07:00
parent 5ae0804bd2
commit deb237f7b0
No known key found for this signature in database
GPG Key ID: 3D4F95D52C7B3EA3

View File

@ -1650,7 +1650,8 @@ static int fsp_fuse_intf_AddDirInfo(void *buf, const char *name,
memset(DirInfo, 0, sizeof *DirInfo);
DirInfo->Size = (UINT16)(sizeof(FSP_FSCTL_DIR_INFO) + SizeW * sizeof(WCHAR));
if (dh->ReaddirPlus && 0 != stbuf)
if (dh->ReaddirPlus && 0 != stbuf &&
0120000/* S_IFLNK */ != (stbuf->st_mode & 0170000))
{
UINT32 Uid, Gid, Mode;
NTSTATUS Result0;