[cifs-protocol] MS-SMB2 3.3.5.9.12 Handling the SMB2_CREATE_DURABLE_HANDLE_RECONNECT_V2 Create Context - TrackingID#2503170040010814
Jeff McCashland (He/him)
jeffm at microsoft.com
Mon Mar 17 16:36:52 UTC 2025
[DocHelp to BCC, support on CC, SR ID on Subject]
Hi Ralph,
Thank you for sending in your questions. We have created SR 2503170040010814 to track this issue. One of our engineers will respond soon.
Best regards,
Jeff McCashland (He/him) | Senior Escalation Engineer | Microsoft Corporation
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
________________________________________
From: Ralph Boehme
Sent: Monday, March 17, 2025 9:29 AM
To: Interoperability Documentation Help
Cc: cifs-protocol at lists.samba.org
Subject: MS-SMB2 3.3.5.9.12 Handling the SMB2_CREATE_DURABLE_HANDLE_RECONNECT_V2 Create Context
Hello dochelp,
another one... :)
In MS-SMB2 3.3.5.9.12 Handling the
SMB2_CREATE_DURABLE_HANDLE_RECONNECT_V2 Create Context there's the
following paragraph:
---8<---
If the request includes the SMB2_DHANDLE_FLAG_PERSISTENT bit in
the Flags field of the SMB2_CREATE_DURABLE_HANDLE_RECONNECT_V2
create context, TreeConnect.Share.IsCA is TRUE, and
Connection.ServerCapabilities includes
SMB2_GLOBAL_CAP_PERSISTENT_HANDLES, the server MUST look up an
existing Open in the GlobalOpenTable by doing a lookup with the
CreateGuid of the create context. If the lookup fails, the server
^^^^^^^^^^^^^^^^^^^ A
SHOULD<345> fail the request with STATUS_OBJECT_NAME_NOT_FOUND and
proceed as specified in "Failed Open Handling" in section 3.3.5.9.
---8<---
To me it's unclear what has to be done if the marked "If the lookup
fails" condition is not met, ie when the lookup succeeds, where to
continue processing in the document? My current understanding of the
protocol flow logic would tell me to continue with the next sentence
which is
---8<---
Otherwise, the server SHOULD<346> fail the request with
^^^^^^^^^ B
STATUS_OBJECT_NAME_NOT_FOUND and proceed as specified in
"Failed Open Handling" in section 3.3.5.9.
---8<---
So two questions:
- where to continue if "the lookup" A succeeds ?
- reading "Otherwise" B as the "else" branch of a preceding "if"
expression, which the corresponding "if" expression?
Thanks!
-slow
More information about the cifs-protocol
mailing list