-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi, On 06/08/2015 13:39, Piotr Caban wrote:
Hi,
On 08/05/15 07:45, YongHao Hu wrote:
+typedef struct _REPARSE_MOUNTPOINT_DATA_BUFFER +{ + DWORD ReparseTag; + DWORD ReparseDataLength; + WORD Reserved; + WORD ReparseTargetLength; + WORD ReparseTargetMaximumLength; + WORD Reserved1; + WCHAR ReparseTarget[1]; +} REPARSE_MOUNTPOINT_DATA_BUFFER, *PREPARSE_MOUNTPOINT_DATA_BUFFER; This structure is not defined in native ntifs.h. I don't know if it's acceptable to add it in wine.
I'd say, no, it's not. For the sole reason that the structure defined upper is wrong and doesn't match reality. Offsets are wrong and data are missing. Reading the comment[1], you wrote on top of the definition in the source file you provided, I wonder: What kind of undocumented things are you referring to? FSCTL_SET_REPARSE_POINT is documented and taking either REPARSE_DATA_BUFFER or REPARSE_GUID_DATA_BUFFER. Would you have details about the missing structure? Would you have test cases? Real applications that use it? Furthermore, it looks highly suspicious even if undocumented, as a mount point is a standard reparse point in Windows, provided by Microsoft (IO_REPARSE_TAG_MOUNT_POINT), and thus, REPARSE_DATA_BUFFER is expected. [1]: /* Undocumented FSCTL_SET_REPARSE_POINT structure definition */ Cheers, - -- Pierre Schweitzer <pierre at reactos.org> System & Network Administrator Senior Kernel Developer ReactOS Deutschland e.V. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQIcBAEBAgAGBQJVw0qQAAoJEHVFVWw9WFsLCz8P/j4e8S0wbrXSWCgl0G2VCvED mPiqPFP1A9zhPAx2lyyhCFe1+s2GjKwOzfxx4CB9XIbrZgr27J6/COte8+pSCGL3 RvDMTiKZrFWHhlvn5GEep8A1uqqRVEq7QvyO1UlDQeCjZxOQq5JOgKJovRsqoan3 NCMQ8XgpiQxkEYuY7GgjQCWSF5bFJFGo7/jDX2zbI47VTc9I/bNJd5AhG1ZAY3Q7 6xpevQ4mVNkQ4tQ4981llZ6UoMs5QETu6HGIngCbDHQwRPF2eSfyT3dTUPi8dDAm lUv/c7rllQ1+O4gbfCUoKZIgk+YAOypixNNRVx/ft5Ln7Ly9+G18lVtIw2JFhcoX EobiYse/pyKsfdl6WsIGUH7Kp4wPn62WKms3aPPTFBFqPnuds3EjH0wEm+6pjOiK K0ZLsNPRAgPja57+tJ4ut0L0r1aBREXXFWmV0T8e2Tivk3SIBl2Gd7DO8UDf/+Mv TUudexL6qM+L5o/QuIXQ10pGSaasIWh2Hl6nQOvE1mq5AdV/jBWzaCOsIDqFmtZH X2v4gSD3tmX74luzm4QRBkFsx1IhzfBJB3DNfXw7dBwOmDAW/bUqHEPnvW/1WcFb Le47pE5Gt9ugOiMDi40tEtcQEmDkLBVR3vhoKtajnHedi9F+U3sEN7hqHYp0YoGp 5oESRKis8yQfHy3MUqeI =m9l1 -----END PGP SIGNATURE-----