Class PdbInfoDotNet

java.lang.Object
ghidra.app.util.bin.format.pdb.PdbInfoDotNet
All Implemented Interfaces:
PdbInfo, StructConverter

public class PdbInfoDotNet extends Object implements StructConverter, PdbInfo
Newer style pdb information, using a GUID to link the pdb to its binary.
  • Method Details

    • isMatch

      public static boolean isMatch(BinaryReader reader, long offset) throws IOException
      Returns true if the pdb information at the specified offset is a PdbInfoDotNet type (based on the signature at that offset).
      Parameters:
      reader - BinaryReader
      offset - offset of the Pdb information
      Returns:
      boolean true if it is a PdbInfoDotNet type
      Throws:
      IOException - if error reading data
    • read

      public static PdbInfoDotNet read(BinaryReader reader, long offset) throws IOException
      Reads an instance from the stream.
      Parameters:
      reader - BinaryReader to read from
      offset - position of the pdb info
      Returns:
      new instance, never null
      Throws:
      IOException - if IO error or data format error
    • fromValues

      public static PdbInfoDotNet fromValues(String pdbPath, int age, GUID guid)
      Creates an instance from explicit values.
      Parameters:
      pdbPath - String path / filename of the pdb file
      age - age
      guid - GUID
      Returns:
      new instance, never null
    • isValid

      public boolean isValid()
      Description copied from interface: PdbInfo
      Returns true if this instance is valid.
      Specified by:
      isValid in interface PdbInfo
      Returns:
      boolean true if valid (magic signature matches and fields have valid data)
    • serializeToOptions

      public void serializeToOptions(Options options)
      Description copied from interface: PdbInfo
      Writes the various PDB info fields to a program's options.
      Specified by:
      serializeToOptions in interface PdbInfo
      Parameters:
      options - Options of a Program to write to
    • toDataType

      public DataType toDataType()
      Description copied from interface: StructConverter
      Returns a structure datatype representing the contents of the implementor of this interface.

      For example, given:

       class A {
           int foo;
           double bar;
       }
       

      The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments.

      Specified by:
      toDataType in interface StructConverter
      Returns:
      returns a structure datatype representing the implementor of this interface
      See Also: