Samba 3.6.6 and above return NT_STATUS_FILE_CLOSED rather than STATUS_INVALID_DEVICE_REQUEST

Jeremy Allison jra at samba.org
Tue Dec 4 15:39:46 MST 2012


On Tue, Dec 04, 2012 at 02:32:49PM -0800, Richard Sharpe wrote:
> Hi folks,
> 
> I am seeing NT_STATUS_FILE_CLOSED in response to an IOCTL/FSCTL we do
> not understand. I believe this is an error, and use the following in
> support of my contention (someone looked at what W2K08 does, but it is
> an error.)
> 
> The protocol documents that a non-SMB3-capable (2.002 or 2.1) should
> respond to VALIDATE_NEGOTIATE_INFO request with a status error of
> STATUS_INVALID_DEVICE_REQUEST, the same error as for any unsupported
> FSCTL. Windows Server 2008 (SMB 2.002) and Windows Server 2008 R2 (SMB
> 2.1) return STATUS_FILE_CLOSED, instead.
> 
> >From here: http://blogs.msdn.com/b/openspecification/archive/2012/06/28/smb3-secure-dialect-negotiation.aspx
> 
> The downside is that the Windows client thinks the file is closed and
> does not explicitly close it leaving an entry in our locking.tdb and
> causing havoc with MS Office apps.

Hmmm. Hang on a minute. Note here in the document you linked to above:

"The protocol documents that a non-SMB3-capable (2.002 or 2.1) should
respond to VALIDATE_NEGOTIATE_INFO request with a status error of
STATUS_INVALID_DEVICE_REQUEST, the same error as for any unsupported
FSCTL. Windows Server 2008 (SMB 2.002) and Windows Server 2008 R2
(SMB 2.1) return STATUS_FILE_CLOSED, instead."

So there are some versions of Windows that do return STATUS_FILE_CLOSED.

Jeremy.


More information about the samba-technical mailing list