[cifs-protocol] Response to SVHDX_OPEN_DEVICE_CONTEXT[_V2] when shared VHDX is not supported
uri at samba.org
Wed Feb 24 20:40:58 UTC 2016
This is a clarification request following recently-closed
I would appreciate a clarification with regards to Shared VHDX and
In the correspondence of that case, it was indicated that upon receiving
a SVHDX_OPEN_DEVICE_CONTEXT or SVHDX_OPEN_DEVICE_CONTEXT_V2 create
context, an SMB3.0.2 or SMB3.1.1 server which does not support SVHDX on
that share should ignore the context (If I understand correctly - that's
the way to signal to the client that SVHDX is not supported).
However, my reading of [MS-SMB2], including the errata, suggests otherwise:
1. The errata says "The server MUST fail create contexts having a
NameLength less than 4 with a STATUS_INVALID_PARAMETER error." - OK, the
server doesn't fail the context and moves on with processing the Open.
2. 188.8.131.52.14 says "If IsSharedVHDSupported is FALSE, the server MUST
fail the request with STATUS_INVALID_DEVICE_REQUEST"
Whereas IsSharedVHDSupported is a global state variable signaling
support for share VHDX - that is, it's FALSE in our case.
It is true that 184.108.40.206.14 is about SVHDX_OPEN_DEVICE_CONTEXT and in the
aforementioned case the context was SVHDX_OPEN_DEVICE_CONTEXT_V2, but
read this section as relating to SVHDX_OPEN_DEVICE_CONTEXT_V2 as well,
because there's no other reference to SVHDX_OPEN_DEVICE_CONTEXT_V2
handling (and since it's a tunneling operation, the SMB server doesn't
care much if it's _V2 or not).
More information about the cifs-protocol