Receiving an SMB2 WRITE Response

If Connection.Dialect belongs to the SMB 3.x dialect family, the underlying transport is RDMA and Request.BufferDescriptorList is not empty, then the processing specified in [MS-SMBD] section Deregister Buffer MUST be used to deregister the buffer before returning to the application.

If Connection.Dialect belongs to the SMB 3.x dialect family and the status code is STATUS_FILE_NOT_AVAILABLE, the client SHOULD<165> replay the write request by looking up the request in Connection.OutstandingRequests using the MessageId field of the SMB2 header.

The client MUST return the received status code in the Status field of the SMB2 header of the response to the application that issued the request to write data to the file or named pipe. The client MUST also return the Count value from the SMB2 WRITE Response following the SMB2 header, indicating how many bytes were written.