sys,dll: SYMLINK_FLAG_RELATIVE

This commit is contained in:
Bill Zissimopoulos
2016-09-11 13:18:54 -07:00
parent af2cc10c15
commit f89c91cd10
4 changed files with 28 additions and 17 deletions

View File

@ -145,7 +145,8 @@ static NTSTATUS FspFsvolFileSystemControlReparsePoint(
ReparseTargetPathLength = ReparseData->SymbolicLinkReparseBuffer.SubstituteNameLength;
/* is this an absolute path? determine if target resides on same device as link */
if (ReparseTargetPathLength >= sizeof(WCHAR) && L'\\' == ReparseTargetPath[0])
if (0 == (ReparseData->SymbolicLinkReparseBuffer.Flags & SYMLINK_FLAG_RELATIVE) &&
ReparseTargetPathLength >= sizeof(WCHAR) && L'\\' == ReparseTargetPath[0])
{
UNICODE_STRING TargetObjectName;
PDEVICE_OBJECT TargetDeviceObject;