Package ghidra.app.util.bin.format.pe
Class SeparateDebugHeader
- java.lang.Object
-
- ghidra.app.util.bin.format.pe.SeparateDebugHeader
-
- All Implemented Interfaces:
OffsetValidator
public class SeparateDebugHeader extends java.lang.Object implements OffsetValidator
typedef struct _IMAGE_SEPARATE_DEBUG_HEADER { WORD Signature; WORD Flags; WORD Machine; WORD Characteristics; DWORD TimeDateStamp; DWORD CheckSum; DWORD ImageBase; DWORD SizeOfImage; DWORD NumberOfSections; DWORD ExportedNamesSize; DWORD DebugDirectorySize; DWORD SectionAlignment; DWORD Reserved[2]; } IMAGE_SEPARATE_DEBUG_HEADER, *PIMAGE_SEPARATE_DEBUG_HEADER;
-
-
Field Summary
Fields Modifier and Type Field Description static int
IMAGE_SEPARATE_DEBUG_SIGNATURE
The magic number for separate debug files.static int
IMAGE_SEPARATE_DEBUG_SIGNATURE_MAC
The magic number for separate debug files on MAC.
-
Constructor Summary
Constructors Constructor Description SeparateDebugHeader(GenericFactory factory, ByteProvider bp)
Constructs a new separate debug header using the specified byte provider.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
checkPointer(long ptr)
boolean
checkRVA(long rva)
short
getCharacteristics()
Returns the characteristics.int
getCheckSum()
Returns the check sum.int
getDebugDirectorySize()
Returns the debug directory size.int
getExportedNamesSize()
Returns the exported names size.short
getFlags()
Returns the flags.int
getImageBase()
Returns the image base.short
getMachine()
Returns the machine type (or processor).java.lang.String
getMachineName()
Returns the machine name (or processor name).int
getNumberOfSections()
Returns the number of sections.DebugDirectoryParser
getParser()
Returns the debug directory parser.int[]
getReserved()
Returns the reserved int array.int
getSectionAlignment()
Returns the section alignment value.short
getSignature()
Returns the signature (or magic number).int
getSizeOfImage()
Returns the size of the image.int
getTimeDateStamp()
Returns the time date stamp.
-
-
-
Field Detail
-
IMAGE_SEPARATE_DEBUG_SIGNATURE
public static final int IMAGE_SEPARATE_DEBUG_SIGNATURE
The magic number for separate debug files.- See Also:
- Constant Field Values
-
IMAGE_SEPARATE_DEBUG_SIGNATURE_MAC
public static final int IMAGE_SEPARATE_DEBUG_SIGNATURE_MAC
The magic number for separate debug files on MAC.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SeparateDebugHeader
public SeparateDebugHeader(GenericFactory factory, ByteProvider bp) throws java.io.IOException
Constructs a new separate debug header using the specified byte provider.- Parameters:
bp
- the byte provider- Throws:
java.io.IOException
- if an I/O error occurs.
-
-
Method Detail
-
getCharacteristics
public short getCharacteristics()
Returns the characteristics.- Returns:
- the characteristics
-
getCheckSum
public int getCheckSum()
Returns the check sum.- Returns:
- the check sum
-
getDebugDirectorySize
public int getDebugDirectorySize()
Returns the debug directory size.- Returns:
- the debug directory size
-
getExportedNamesSize
public int getExportedNamesSize()
Returns the exported names size.- Returns:
- the exported names size
-
getFlags
public short getFlags()
Returns the flags.- Returns:
- the flags
-
getImageBase
public int getImageBase()
Returns the image base.- Returns:
- the image base
-
getMachine
public short getMachine()
Returns the machine type (or processor).- Returns:
- the machine type
-
getMachineName
public java.lang.String getMachineName()
Returns the machine name (or processor name).- Returns:
- the machine name
-
getNumberOfSections
public int getNumberOfSections()
Returns the number of sections.- Returns:
- the number of sections
-
getReserved
public int[] getReserved()
Returns the reserved int array.- Returns:
- the reserved int array
-
getSectionAlignment
public int getSectionAlignment()
Returns the section alignment value.- Returns:
- the section alignment value
-
getSignature
public short getSignature()
Returns the signature (or magic number).- Returns:
- the signature
-
getSizeOfImage
public int getSizeOfImage()
Returns the size of the image.- Returns:
- the size of the image
-
getTimeDateStamp
public int getTimeDateStamp()
Returns the time date stamp.- Returns:
- the time date stamp
-
getParser
public DebugDirectoryParser getParser()
Returns the debug directory parser.- Returns:
- the debug directory parser
-
checkPointer
public boolean checkPointer(long ptr)
- Specified by:
checkPointer
in interfaceOffsetValidator
-
checkRVA
public boolean checkRVA(long rva)
- Specified by:
checkRVA
in interfaceOffsetValidator
-
-