Class MaskedByteSequenceByteMatcher

java.lang.Object
ghidra.features.base.memsearch.matcher.ByteMatcher
ghidra.features.base.memsearch.matcher.MaskedByteSequenceByteMatcher

public class MaskedByteSequenceByteMatcher extends ByteMatcher
ByteMatcher where the user search input has been parsed into a sequence of bytes and masks to be used for searching a byte sequence.
  • Constructor Details

    • MaskedByteSequenceByteMatcher

      public MaskedByteSequenceByteMatcher(String input, byte[] bytes, SearchSettings settings)
      Constructor where no masking will be required. The bytes must match exactly.
      Parameters:
      input - the input text used to create this matcher
      bytes - the sequence of bytes to use for searching
      settings - the SearchSettings used to parse the input text
    • MaskedByteSequenceByteMatcher

      public MaskedByteSequenceByteMatcher(String input, byte[] bytes, byte[] masks, SearchSettings settings)
      Constructor that includes a mask byte for each search byte.
      Parameters:
      input - the input text used to create this matcher
      bytes - the sequence of bytes to use for searching
      masks - the sequence of mask bytes to use for search. Each mask byte will be applied to the bytes being search before comparing them to the target bytes.
      settings - the SearchSettings used to parse the input text
  • Method Details

    • match

      public Iterable<ByteMatcher.ByteMatch> match(ExtendedByteSequence byteSequence)
      Description copied from class: ByteMatcher
      Returns an Iterable for returning matches within the given byte sequence.
      Specified by:
      match in class ByteMatcher
      Parameters:
      byteSequence - the byte sequence to search
      Returns:
      an iterable for return matches in the given sequence
    • getDescription

      public String getDescription()
      Description copied from class: ByteMatcher
      Returns a description of what this byte matcher matches. (Typically a sequence of bytes)
      Specified by:
      getDescription in class ByteMatcher
      Returns:
      a description of what this byte matcher matches
    • getToolTip

      public String getToolTip()
      Description copied from class: ByteMatcher
      Returns additional information about this byte matcher. (Typically the mask bytes)
      Specified by:
      getToolTip in class ByteMatcher
      Returns:
      additional information about this byte matcher
    • getBytes

      public byte[] getBytes()
    • getMask

      public byte[] getMask()