dll: FspFileSystemResolveReparsePoints

Fix junction handling.
This commit is contained in:
Bill Zissimopoulos 2020-02-04 15:37:17 -08:00
parent 9e32fed598
commit 52663ec676
No known key found for this signature in database
GPG Key ID: 3D4F95D52C7B3EA3

View File

@ -1748,9 +1748,15 @@ reparse_data_exit:
return IO_REPARSE_TAG_SYMLINK != ReparseData->ReparseTag ?
STATUS_IO_REPARSE_DATA_INVALID : STATUS_REPARSE_POINT_NOT_RESOLVED;
if (IO_REPARSE_TAG_MOUNT_POINT == ReparseData->ReparseTag)
RemainderPathSize = lstrlenW(RemainderPath) * sizeof(WCHAR);
*PSize = ReparseDataSize;
memcpy(Buffer, ReparseData, ReparseDataSize);
if (IO_REPARSE_TAG_MOUNT_POINT == ReparseData->ReparseTag)
OutputReparseData->Reserved = RemainderPathSize;
PIoStatus->Status = STATUS_REPARSE;
PIoStatus->Information = ReparseData->ReparseTag;
return STATUS_REPARSE;