ntdll.dll: mark dirlink as REPARSE_POINT (v2)
Detlef Riekenberg
wine.dev at web.de
Fri Jun 3 07:14:53 CDT 2005
Am Mittwoch, den 01.06.2005, 21:52 +0200 schrieb Francois Gouget:
> > Some Informations about a REPARSE_POINT:
> >
> How does Find{First,Next}File handle REPARSE_POINTs?
Simple as a Directory with the additional Bit for
"FILE_ATTRIBUTE_REPARSE_POINT" set (0x0400).
The Patch is already in the CVS-Tree, so wine does the same.
But beware. The runtime-libraries of some C-Compiler does not handle
this bit in there implementation.
Example:
----- cut -----
While testing my Code with OpenWatcom 1.2b I have some Problems with
the
"attrib" - Field of "_finddata_t" for _findfirst/_findnext:
Link's (0x0400) are not detected, because with OW1.2, the "attrib" -
Field has always "0" in the highest 8 Bit's.
Full 16-Bit attrib with the same Source and the following compiler's:
-DigitalMars 8.33 / 8.37
-BCC 5.5.1
-MinGW 3.1 (gcc 3.2.3)
-Microsoft C/C++ 12.00 Authoring Edition
I don't have a different Watcom/Open Watcom version.
Using "C"-Source with wcl386, W2K sp3 and NTFS.
----- cut -----
That was my Mail in "news:openwatcom.users.c_cpp" in Nov/2003.
I switched to _WIN32_FIND_DATA after that.
Everything was ANSI and i need to change my source to use UNICODE.
> Any chance we could
> use them to enable ShowSymdirLink without causing applications to go
> into infinite loops?
> If yes that would be very cool.
The Explorer (w2k) does not copy the Link, it creates a Directory with
the Name of the Link an copy the complete Contents of the Link-Target.
Not very cool for the User.
We need some testcases to verify this behaviour on newer
Windows-Versions before we can implement Link-Creation in Wine.
(The Application-Part for the Creation of REPARSE_POINTs is in the
Sources, i mentioned before).
--
By By ...
... Detlef
More information about the wine-devel
mailing list