[NTOSKRNL]
authorPierre Schweitzer <pierre@reactos.org>
Tue, 9 Dec 2014 21:33:38 +0000 (21:33 +0000)
committerPierre Schweitzer <pierre@reactos.org>
Tue, 9 Dec 2014 21:33:38 +0000 (21:33 +0000)
commit5503ce60e6ae73184e073533419491b914d13228
tree1bd7c8a50ba32337b053e408b91ecb2953bb44b5
parenta98c9c121930e8b371222a68cf33fe0fecd520f8
[NTOSKRNL]
THE oneliner....
Properly read the information from the IRP to get the reparse tag. This fixes the handling of reparse mount points in ReactOS.

To make it short and crystal clear: reparse points from NTFS now work in ReactOS.
Demonstration with a Windows 7 volume read inside ReactOS with our NTFS driver and the "Documents and Settings" directory pointing to Users.

IopDoNameTransmogrify() properly gets the reparse data and extracts the mount point:
(../../ntoskrnl/io/iomgr/file.c:178) IopDoNameTransmogrify(B074DB98B022BC28B0226068)
(../../ntoskrnl/io/iomgr/file.c:232) Old name: '\Documents and Settings\'
(../../ntoskrnl/io/iomgr/file.c:266) Reparsed name: '\??\C:\Users'

Then.... http://www.heisspiter.net/~Pierre/rostests/NTFS_Reparse.png
First, I attempt to open "Documents and Settings" on my NTFS volume, it fails as "C:\" drive is hardcoded in the reparse point.
So, I create the Users directory on C:\ and a dummy file in it.
Then, I cd again which works now.
And dir properly shows the dummy created file :-).

svn path=/trunk/; revision=65596
reactos/ntoskrnl/io/iomgr/file.c