[cifs-protocol] SET_REPARSE_POINT vs QUERY_DIRECTORY? - TrackingID#2301020040002842

Jeff McCashland (He/him) jeffm at microsoft.com
Mon Jan 9 18:54:50 UTC 2023


Hi Volker,

QUERY_DIRECTORY results are read from the directory's duplicated information. [MS-FSA] documents that duplicated information is updated when the file handle is closed:

2.1.5.5     Server Requests Closing an Open
§     Phase 3 - File Deletion:
§     If LinkDeleted is FALSE:
§     The object store MUST update the duplicated information as specified in section 2.1.4.18 with Link equal to Link.
§     EndIf

However, duplicated information is not updated when SET_REPARSE_POINT is handled (section 2.1.5.10.37).

Were you to immediately query the file state after setting the reparse point, you would see the change. However, the change isn't shown in directory queries until the duplicated information is updated.

Best regards,
Jeff McCashland (He/him) | Senior Escalation Engineer | Microsoft Protocol Open Specifications Team
Phone: +1 (425) 703-8300 x38300 | Hours: 9am-5pm | Time zone: (UTC-08:00) Pacific Time (US and Canada)
Local country phone number found here: http://support.microsoft.com/globalenglish<https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fsupport.microsoft.com%2Fglobalenglish&data=02%7C01%7Cjeffm%40microsoft.com%7C92c4c7bb8c6d4412e78108d80d79f45f%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637274164726698458&sdata=KtEL7V58Q7rscYvr9cPik%2FmYKZIv0rh3E3kBdGywwwI%3D&reserved=0> | Extension 1138300

________________________________
From: Jeff McCashland (He/him)
Sent: Tuesday, January 3, 2023 9:04 AM
To: Volker Lendecke <Volker.Lendecke at sernet.de>
Cc: cifs-protocol at lists.samba.org <cifs-protocol at lists.samba.org>; Microsoft Support <supportmail at microsoft.com>
Subject: RE: SET_REPARSE_POINT vs QUERY_DIRECTORY? - TrackingID#2301020040002842

[Hung-Chun to BCC]

Hi Volker,

I will investigate your question and let you know what I find.

Best regards,
Jeff McCashland (He/him) | Senior Escalation Engineer | Microsoft Protocol Open Specifications Team
Phone: +1 (425) 703-8300 x38300 | Hours: 9am-5pm | Time zone: (UTC-08:00) Pacific Time (US and Canada)
Local country phone number found here: http://support.microsoft.com/globalenglish | Extension 1138300

-----Original Message-----
From: Hung-Chun Yu <HungChun.Yu at microsoft.com>
Sent: Monday, January 2, 2023 10:59 AM
To: Volker Lendecke <Volker.Lendecke at sernet.de>
Cc: cifs-protocol at lists.samba.org; Hung-Chun Yu <HungChun.Yu at microsoft.com>; Microsoft Support <supportmail at microsoft.com>
Subject: SET_REPARSE_POINT vs QUERY_DIRECTORY? - TrackingID#2301020040002842

[BCC dochelp]
Hi Volker

Thank you for contacting Microsoft Open Specifications Support. We created SR case TrackingID#2301020040002842, do leave this tag in the subject line for future reference.
One of our engineers will contact you shortly.

Hung-Chun Yu
Microsoft Open Specifications Support

-----Original Message-----
From: Volker Lendecke <Volker.Lendecke at sernet.de>
Sent: Monday, January 2, 2023 6:38 AM
To: Interoperability Documentation Help <dochelp at microsoft.com>
Cc: cifs-protocol at lists.samba.org
Subject: [EXTERNAL] SET_REPARSE_POINT vs QUERY_DIRECTORY?

Hello dochelp!

Attached find a network trace against Windows 2016 server that creates a symlink and tries to query it via QUERY_DIRECTORY.

In frame 19 a symlink x->y is successfully created.

When listing the directory, frame 24 just shows FILE_ATTRIBUTE_ARCHIVE for "x". Only if "x" is closed in frame 29, the listing shows FILE_ATTRIBUTE_ARCHIVE | FILE_ATTRIBUTE_REPARSE_POINT in frame 34 as expected.

Question: Is this relevant, and where is this documented?

Thanks, Volker

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.samba.org/pipermail/cifs-protocol/attachments/20230109/a0fe29de/attachment.htm>


More information about the cifs-protocol mailing list