Class BaseRelocationDataDirectory

java.lang.Object
ghidra.app.util.bin.format.pe.DataDirectory
ghidra.app.util.bin.format.pe.BaseRelocationDataDirectory
All Implemented Interfaces:
ByteArrayConverter, PeMarkupable

public class BaseRelocationDataDirectory extends DataDirectory implements ByteArrayConverter
Points to the base relocation information.
  • Method Details

    • getDirectoryName

      public String getDirectoryName()
      Specified by:
      getDirectoryName in class DataDirectory
    • markup

      public void markup(Program program, boolean isBinary, TaskMonitor monitor, MessageLog log, NTHeader nt) throws CodeUnitInsertionException
      Description copied from interface: PeMarkupable
      Marks up a PE structure.
      Specified by:
      markup in interface PeMarkupable
      Parameters:
      program - The program to markup.
      isBinary - True if the program is binary; otherwise, false.
      monitor - The monitor.
      log - The log.
      nt - The PE's NT Header structure.
      Throws:
      CodeUnitInsertionException
    • parse

      public boolean parse() throws IOException
      Description copied from class: DataDirectory
      Parses this data directory.
      Specified by:
      parse in class DataDirectory
      Returns:
      True if parsing completed successfully; otherwise, false.
      Throws:
      IOException - If there was an IO problem while parsing.
    • getBaseRelocations

      public BaseRelocation[] getBaseRelocations()
      Returns the array of base relocations defined in this base relocation data directory.
      Returns:
      the array of base relocations defined in this base relocation data directory
    • removeAllRelocations

      public void removeAllRelocations()
      Removes all base relocations from this base relocation directory.
    • createBaseRelocation

      public BaseRelocation createBaseRelocation(int va)
      Create a new base relocation using the specified virtual address.
      Parameters:
      va - the virtual address of the new base relocation
      Returns:
      the new base relocation
    • addBaseRelocation

      public void addBaseRelocation(BaseRelocation reloc)
      Adds the specified base relocation.
      Parameters:
      reloc - the new base relocation
    • toBytes

      public byte[] toBytes(DataConverter dc)
      Description copied from interface: ByteArrayConverter
      Returns a byte array representing this implementor of this interface.
      Specified by:
      toBytes in interface ByteArrayConverter
      Parameters:
      dc - the data converter to use
      Returns:
      a byte array representing this object