[cifs-protocol] Response to SVHDX_OPEN_DEVICE_CONTEXT[_V2] when shared VHDX is not supported

Uri Simchoni uri at samba.org
Wed Feb 24 20:40:58 UTC 2016


Hi Bryan,

This is a clarification request following recently-closed 
REG:116022313745563.

I would appreciate a clarification with regards to Shared VHDX and 
[MS-SMB2].

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. 3.3.5.9.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 3.3.5.9.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).

Please advise.

Thanks,
Uri.



More information about the cifs-protocol mailing list