From deb237f7b04380388395e2ee859d0933c24373ca Mon Sep 17 00:00:00 2001 From: Bill Zissimopoulos Date: Mon, 30 Apr 2018 13:31:06 -0700 Subject: [PATCH] dll: fuse: fsp_fuse_intf_AddDirInfo: avoid deadlock with ReaddirPlus and symlinks --- src/dll/fuse/fuse_intf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dll/fuse/fuse_intf.c b/src/dll/fuse/fuse_intf.c index 9e87deb4..4a88f3ee 100644 --- a/src/dll/fuse/fuse_intf.c +++ b/src/dll/fuse/fuse_intf.c @@ -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;