/// <summary> /// Deep copy constructor. /// </summary> public SmbWriteBulkDataRequestPacket(SmbWriteBulkDataRequestPacket packet) : base(packet) { this.InitDefaultValue(); }
/// <summary> /// to create a WriteBulkData request packet. /// </summary> /// <param name="messageId">This field SHOULD be the multiplex ID that is used to associate a response with a /// request.</param> /// <param name="uid">This field SHOULD identify the authenticated instance of the user.</param> /// <param name="treeId">This field identifies the subdirectory (or tree) on the server that the client is /// accessing.</param> /// <param name="flags">An 8-bit field of 1-bit flags describing various features in effect for the /// message</param> /// <param name="flags2">A 16-bit field of 1-bit flags that represent various features in effect for the /// message. Unspecified bits are reserved and MUST be zero.</param> /// <returns>a WriteBulkData request packet</returns> public SmbWriteBulkDataRequestPacket CreateWriteBulkDataRequest( ushort messageId, ushort uid, ushort treeId, SmbFlags flags, SmbFlags2 flags2) { SmbWriteBulkDataRequestPacket packet = new SmbWriteBulkDataRequestPacket(); packet.SmbHeader = CifsMessageUtils.CreateSmbHeader(SmbCommand.SMB_COM_WRITE_BULK_DATA, messageId, uid, treeId, flags, flags2); return packet; }
public SmbWriteBulkDataResponsePacket CreateWriteBulkDataResponse( CifsServerPerConnection connection, SmbWriteBulkDataRequestPacket request) { SmbWriteBulkDataResponsePacket response = new SmbWriteBulkDataResponsePacket(); response.SmbHeader = CifsMessageUtils.CreateSmbHeader(connection, request); SmbHeader smbHeader = CifsMessageUtils.CreateSmbHeader(connection, request); if ((smbHeader.Flags2 & SmbFlags2.SMB_FLAGS2_NT_STATUS) == SmbFlags2.SMB_FLAGS2_NT_STATUS) { smbHeader.Status = (uint)NtStatus.STATUS_NOT_IMPLEMENTED; } else { SmbStatus smbStatus = new SmbStatus(); smbStatus.ErrorClass = SmbErrorClass.ERRDOS; smbStatus.Reserved = 0; smbStatus.ErrorCode = (ushort)SmbErrorCodeOfERRDOS.ERRbadfunc; smbHeader.Status = smbStatus; } response.SmbHeader = smbHeader; return response; }