Class DebugDirectoryParser

java.lang.Object
ghidra.app.util.bin.format.pe.debug.DebugDirectoryParser
All Implemented Interfaces:
OffsetValidator

public class DebugDirectoryParser extends Object implements OffsetValidator
A helper class to parsing different types of debug information from a debug directory
  • Field Details

    • IMAGE_DEBUG_TYPE_UNKNOWN

      public static final byte IMAGE_DEBUG_TYPE_UNKNOWN
      Unknown debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_COFF

      public static final byte IMAGE_DEBUG_TYPE_COFF
      COFF debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_CODEVIEW

      public static final byte IMAGE_DEBUG_TYPE_CODEVIEW
      CodeView debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_FPO

      public static final byte IMAGE_DEBUG_TYPE_FPO
      FPO debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_MISC

      public static final byte IMAGE_DEBUG_TYPE_MISC
      Misc debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_EXCEPTION

      public static final byte IMAGE_DEBUG_TYPE_EXCEPTION
      Exception debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_FIXUP

      public static final byte IMAGE_DEBUG_TYPE_FIXUP
      Fixup debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_OMAP_TO_SRC

      public static final byte IMAGE_DEBUG_TYPE_OMAP_TO_SRC
      OMAP-To-Source debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_OMAP_FROM_SRC

      public static final byte IMAGE_DEBUG_TYPE_OMAP_FROM_SRC
      OMAP-From-Source debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_BORLAND

      public static final byte IMAGE_DEBUG_TYPE_BORLAND
      Borland debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_RESERVED10

      public static final byte IMAGE_DEBUG_TYPE_RESERVED10
      Reserved debug type.
      See Also:
    • IMAGE_DEBUG_TYPE_CLSID

      public static final byte IMAGE_DEBUG_TYPE_CLSID
      CLS ID debug type.
      See Also:
  • Constructor Details

    • DebugDirectoryParser

      public DebugDirectoryParser(BinaryReader reader, long ptr, int size, long sizeOfImage) throws IOException
      Constructs a new debug directory parser.
      Parameters:
      reader - the binary reader
      ptr - the pointer into the binary reader
      size - the size of the directory
      sizeOfImage - the size of the image in memory
      Throws:
      IOException - if an I/O error occurs
  • Method Details

    • getDebugDirectories

      public DebugDirectory[] getDebugDirectories()
    • getDebugMisc

      public DebugMisc getDebugMisc()
      Returns the miscellaneous debug information, or null if it does not exists.
      Returns:
      the miscellaneous debug information
    • getDebugCodeView

      public DebugCodeView getDebugCodeView()
      Returns the CodeView debug information, or null if it does not exists.
      Returns:
      the CodeView debug information
    • getDebugCOFFSymbolsHeader

      public DebugCOFFSymbolsHeader getDebugCOFFSymbolsHeader()
      Returns the COFF debug information, or null if it does not exists.
      Returns:
      the COFF debug information
    • getDebugFixup

      public DebugFixup getDebugFixup()
      Returns the Fixup debug information, or null if it does not exists.
      Returns:
      the Fixup debug information
    • checkPointer

      public boolean checkPointer(long ptr)
      Specified by:
      checkPointer in interface OffsetValidator
    • checkRVA

      public boolean checkRVA(long rva)
      Specified by:
      checkRVA in interface OffsetValidator