docs: @Override
      public int decode ( byte[] buffer, int bufferIndex, int len ) throws SMBProtocolDecodingException {
          int start = bufferIndex;
          this.namedPipeState = SMBUtil.readInt4(buffer, bufferIndex);
          bufferIndex += 4;
          this.readDataAvailable = SMBUtil.readInt4(buffer, bufferIndex);
          bufferIndex += 4;
          this.numberOfMessages = SMBUtil.readInt4(buffer, bufferIndex);
          bufferIndex += 4;
          this.messageLength = SMBUtil.readInt4(buffer, bufferIndex);
          bufferIndex += 4;
          this.data = new byte[len - 16];
          if ( this.data.length > 0 ) {
              System.arraycopy(buffer, bufferIndex, this.data, 0, this.data.length);
          }
          return bufferIndex - start;
      }