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

Bryan Burgin bburgin at microsoft.com
Thu Feb 25 22:02:25 UTC 2016


The errata only concerns processing for create context names that are unknown (like 'AAPL').  [MS-SMB2] 2.2.13.2 "SMB2_CREATE_CONTEXT Request Values" enumerates the known context names and identifies 0x9CCBCF9E04C1E643980E158DA1F6EC83 as SVHDX_OPEN_DEVICE_CONTEXT.  [MS-SMB2] further has the server processing rule for at 3.3.5.9.14 "Handling the SVHDX_OPEN_DEVICE_CONTEXT Create Context" that describe "If IsSharedVHDSupported is FALSE, the server MUST fail the request with STATUS_INVALID_DEVICE_REQUEST" for "servers that implement the SMB 3.0.2 or SMB 3.1.1 dialect".

B.

-----Original Message-----
From: Jeremy Allison [mailto:jra at samba.org] 
Sent: Thursday, February 25, 2016 1:50 PM
To: Bryan Burgin <bburgin at microsoft.com>
Cc: Uri Simchoni <uri at samba.org>; cifs-protocol at lists.samba.org; MSSolve Case Email <casemail at microsoft.com>
Subject: Re: [cifs-protocol] [REG:116022413751567 ] Response to SVHDX_OPEN_DEVICE_CONTEXT[_V2] when shared VHDX is not supported

On Thu, Feb 25, 2016 at 08:54:56PM +0000, Bryan Burgin wrote:

> However, per the spec, we believe that you should be either supporting 
> the context (and RSVD) or failing the Create.

Hang on, the errata now says:

https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fmsdn.microsoft.com%2fen-us%2flibrary%2fdn785067.aspx&data=01%7c01%7cbburgin%40microsoft.com%7cb2eeec7298884d083d0f08d33e2dab75%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=E3QLM1S5A2aVW18YKIxi8QfA%2fwuHVdSzW1dsBybNQtg%3d

2015/12/11
In section 3.3.5.9 Receiving an SMB2 CREATE Request, the first paragraph under Create Context Validation has been changed.
Changed from:
The server SHOULD<247> fail any request having a create context not specified in section 2.2.13.2 with a STATUS_INVALID_PARAMETER error.
<247> Section 3.3.5.9: Windows Vista SP1, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, and Windows Server 2012 ignore create contexts having a NameLength greater than 4 and ignore create contexts with a length of 4 that are not specified in section 2.2.13.2.
Changed to:
The server MUST fail create contexts having a NameLength less than 4 with a STATUS_INVALID_PARAMETER error.

That doesn't say anything about supporting a specific context - just return STATUS_INVALID_PARAMETER if NameLength < 4 - which we already do.

As far as I can see we are correctly implementing the spec.

Jeremy.



More information about the cifs-protocol mailing list