docs: @Override
      protected int writeBytesWireFormat ( byte[] dst, int dstIndex ) {
          int start = dstIndex;
          SMBUtil.writeInt2(49, dst, dstIndex);
          int dataOffsetOffset = dstIndex + 2;
          dstIndex += 4;
          SMBUtil.writeInt4(this.dataLength, dst, dstIndex);
          dstIndex += 4;
          SMBUtil.writeInt8(this.offset, dst, dstIndex);
          dstIndex += 8;
          System.arraycopy(this.fileId, 0, dst, dstIndex, 16);
          dstIndex += 16;
          SMBUtil.writeInt4(this.channel, dst, dstIndex);
          dstIndex += 4;
          SMBUtil.writeInt4(this.remainingBytes, dst, dstIndex);
          dstIndex += 4;
  
          SMBUtil.writeInt2(0, dst, dstIndex); // writeChannelInfoOffset
          SMBUtil.writeInt2(0, dst, dstIndex + 2); // writeChannelInfoLength
          dstIndex += 4;
  
          SMBUtil.writeInt4(this.writeFlags, dst, dstIndex);
          dstIndex += 4;
  
          SMBUtil.writeInt2(dstIndex - getHeaderStart(), dst, dataOffsetOffset);
  
          if ( dstIndex + this.dataLength > dst.length ) {
              throw new IllegalArgumentException(
                  String.format("Data exceeds buffer size ( remain buffer: %d data length: %d)", dst.length - dstIndex, this.dataLength));
          }
  
          System.arraycopy(this.data, this.dataOffset, dst, dstIndex, this.dataLength);
          dstIndex += this.dataLength;
          return dstIndex - start;
      }