3.3.5.8 Receiving an SMB_COM_WRITE_ANDX Request

The processing of an SMB_COM_WRITE_ANDX request is handled as specified in [MS-CIFS] section 3.3.5.37 with the following additions:

If CAP_LARGE_WRITEX is set in Server.Connection.ClientCapabilities, then it is possible that the count of bytes to be written is larger than the server's MaxBufferSize. The count of bytes to be written is specified in the DataLength and DataLengthHigh fields sent in the request, as specified in section 2.2.4.3.1. If the size of SMB_Data.Bytes.Data is not equal to (DataLength | DataLengthHigh <<16), the server SHOULD<127> fail the request and return ERRSRV/ERRerror.

If the server successfully writes data to the underlying object store, then the count of bytes written MUST be set in the Count and CountHigh fields of the response, as specified in section 2.2.4.3.2.