Class DebugCOFFSymbol
java.lang.Object
ghidra.app.util.bin.format.pe.debug.DebugCOFFSymbol
- All Implemented Interfaces:
StructConverter
A class to represent the COFF symbol data structure.
typedef struct _IMAGE_SYMBOL { union { BYTE ShortName[8]; struct { DWORD Short; // if 0, use LongName DWORD Long; // offset into string table } Name; DWORD LongName[2]; // PBYTE [2] } N; DWORD Value; SHORT SectionNumber; WORD Type; BYTE StorageClass; BYTE NumberOfAuxSymbols; } IMAGE_SYMBOL;
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
The size of theIMAGE_SYMBOL
structure.static final short
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final byte
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
-
Constructor Summary
ConstructorDescriptionDebugCOFFSymbol
(BinaryReader reader, int index, long stringTableIndex) DebugCOFFSymbol
(BinaryReader reader, int index, DebugCOFFSymbolTable symbolTable) -
Method Summary
Modifier and TypeMethodDescriptionReturns the auxiliary symbols related to this symbol.getName()
Returns the name of this symbol.int
Returns the number of auxiliary symbols defined with this symbol.int
Returns the section number if this symbol.Returns a string equivalent of the section number of this symbol.int
Returns the storage class of this symbol.Returns a string equivalent of the storage class of this symbol.int
getType()
Returns the type of this symbol.Returns a string equivalent of the type of this symbol.int
getValue()
Returns the value of this symbol.Returns a string equivalent of the value of this symbol.Returns a structure datatype representing the contents of the implementor of this interface.toString()
-
Field Details
-
IMAGE_SIZEOF_SYMBOL
public static final int IMAGE_SIZEOF_SYMBOLThe size of theIMAGE_SYMBOL
structure.- See Also:
-
IMAGE_SYM_UNDEFINED
public static final short IMAGE_SYM_UNDEFINED- See Also:
-
IMAGE_SYM_ABSOLUTE
public static final short IMAGE_SYM_ABSOLUTE- See Also:
-
IMAGE_SYM_DEBUG
public static final short IMAGE_SYM_DEBUG- See Also:
-
IMAGE_SYM_TYPE_NULL
public static final short IMAGE_SYM_TYPE_NULL- See Also:
-
IMAGE_SYM_TYPE_VOID
public static final short IMAGE_SYM_TYPE_VOID- See Also:
-
IMAGE_SYM_TYPE_CHAR
public static final short IMAGE_SYM_TYPE_CHAR- See Also:
-
IMAGE_SYM_TYPE_SHORT
public static final short IMAGE_SYM_TYPE_SHORT- See Also:
-
IMAGE_SYM_TYPE_INT
public static final short IMAGE_SYM_TYPE_INT- See Also:
-
IMAGE_SYM_TYPE_LONG
public static final short IMAGE_SYM_TYPE_LONG- See Also:
-
IMAGE_SYM_TYPE_FLOAT
public static final short IMAGE_SYM_TYPE_FLOAT- See Also:
-
IMAGE_SYM_TYPE_DOUBLE
public static final short IMAGE_SYM_TYPE_DOUBLE- See Also:
-
IMAGE_SYM_TYPE_STRUCT
public static final short IMAGE_SYM_TYPE_STRUCT- See Also:
-
IMAGE_SYM_TYPE_UNION
public static final short IMAGE_SYM_TYPE_UNION- See Also:
-
IMAGE_SYM_TYPE_ENUM
public static final short IMAGE_SYM_TYPE_ENUM- See Also:
-
IMAGE_SYM_TYPE_MOE
public static final short IMAGE_SYM_TYPE_MOE- See Also:
-
IMAGE_SYM_TYPE_BYTE
public static final short IMAGE_SYM_TYPE_BYTE- See Also:
-
IMAGE_SYM_TYPE_WORD
public static final short IMAGE_SYM_TYPE_WORD- See Also:
-
IMAGE_SYM_TYPE_UINT
public static final short IMAGE_SYM_TYPE_UINT- See Also:
-
IMAGE_SYM_TYPE_DWORD
public static final short IMAGE_SYM_TYPE_DWORD- See Also:
-
IMAGE_SYM_TYPE_PCODE
public static final short IMAGE_SYM_TYPE_PCODE- See Also:
-
IMAGE_SYM_DTYPE_NULL
public static final short IMAGE_SYM_DTYPE_NULL- See Also:
-
IMAGE_SYM_DTYPE_POINTER
public static final short IMAGE_SYM_DTYPE_POINTER- See Also:
-
IMAGE_SYM_DTYPE_FUNCTION
public static final short IMAGE_SYM_DTYPE_FUNCTION- See Also:
-
IMAGE_SYM_DTYPE_ARRAY
public static final short IMAGE_SYM_DTYPE_ARRAY- See Also:
-
IMAGE_SYM_CLASS_END_OF_FUNCTION
public static final byte IMAGE_SYM_CLASS_END_OF_FUNCTION- See Also:
-
IMAGE_SYM_CLASS_NULL
public static final byte IMAGE_SYM_CLASS_NULL- See Also:
-
IMAGE_SYM_CLASS_AUTOMATIC
public static final byte IMAGE_SYM_CLASS_AUTOMATIC- See Also:
-
IMAGE_SYM_CLASS_EXTERNAL
public static final byte IMAGE_SYM_CLASS_EXTERNAL- See Also:
-
IMAGE_SYM_CLASS_STATIC
public static final byte IMAGE_SYM_CLASS_STATIC- See Also:
-
IMAGE_SYM_CLASS_REGISTER
public static final byte IMAGE_SYM_CLASS_REGISTER- See Also:
-
IMAGE_SYM_CLASS_EXTERNAL_DEF
public static final byte IMAGE_SYM_CLASS_EXTERNAL_DEF- See Also:
-
IMAGE_SYM_CLASS_LABEL
public static final byte IMAGE_SYM_CLASS_LABEL- See Also:
-
IMAGE_SYM_CLASS_UNDEFINED_LABEL
public static final byte IMAGE_SYM_CLASS_UNDEFINED_LABEL- See Also:
-
IMAGE_SYM_CLASS_MEMBER_OF_STRUCT
public static final byte IMAGE_SYM_CLASS_MEMBER_OF_STRUCT- See Also:
-
IMAGE_SYM_CLASS_ARGUMENT
public static final byte IMAGE_SYM_CLASS_ARGUMENT- See Also:
-
IMAGE_SYM_CLASS_STRUCT_TAG
public static final byte IMAGE_SYM_CLASS_STRUCT_TAG- See Also:
-
IMAGE_SYM_CLASS_MEMBER_OF_UNION
public static final byte IMAGE_SYM_CLASS_MEMBER_OF_UNION- See Also:
-
IMAGE_SYM_CLASS_UNION_TAG
public static final byte IMAGE_SYM_CLASS_UNION_TAG- See Also:
-
IMAGE_SYM_CLASS_TYPE_DEFINITION
public static final byte IMAGE_SYM_CLASS_TYPE_DEFINITION- See Also:
-
IMAGE_SYM_CLASS_UNDEFINED_STATIC
public static final byte IMAGE_SYM_CLASS_UNDEFINED_STATIC- See Also:
-
IMAGE_SYM_CLASS_ENUM_TAG
public static final byte IMAGE_SYM_CLASS_ENUM_TAG- See Also:
-
IMAGE_SYM_CLASS_MEMBER_OF_ENUM
public static final byte IMAGE_SYM_CLASS_MEMBER_OF_ENUM- See Also:
-
IMAGE_SYM_CLASS_REGISTER_PARAM
public static final byte IMAGE_SYM_CLASS_REGISTER_PARAM- See Also:
-
IMAGE_SYM_CLASS_BIT_FIELD
public static final byte IMAGE_SYM_CLASS_BIT_FIELD- See Also:
-
IMAGE_SYM_CLASS_FAR_EXTERNAL
public static final byte IMAGE_SYM_CLASS_FAR_EXTERNAL- See Also:
-
IMAGE_SYM_CLASS_BLOCK
public static final byte IMAGE_SYM_CLASS_BLOCK- See Also:
-
IMAGE_SYM_CLASS_FUNCTION
public static final byte IMAGE_SYM_CLASS_FUNCTION- See Also:
-
IMAGE_SYM_CLASS_END_OF_STRUCT
public static final byte IMAGE_SYM_CLASS_END_OF_STRUCT- See Also:
-
IMAGE_SYM_CLASS_FILE
public static final byte IMAGE_SYM_CLASS_FILE- See Also:
-
IMAGE_SYM_CLASS_SECTION
public static final byte IMAGE_SYM_CLASS_SECTION- See Also:
-
IMAGE_SYM_CLASS_WEAK_EXTERNAL
public static final byte IMAGE_SYM_CLASS_WEAK_EXTERNAL- See Also:
-
-
Constructor Details
-
DebugCOFFSymbol
public DebugCOFFSymbol(BinaryReader reader, int index, DebugCOFFSymbolTable symbolTable) throws IOException - Throws:
IOException
-
DebugCOFFSymbol
- Throws:
IOException
-
-
Method Details
-
getAuxiliarySymbols
Returns the auxiliary symbols related to this symbol.- Returns:
- the auxiliary symbols related to this symbol
-
getName
Returns the name of this symbol.- Returns:
- the name of this symbol
-
getValue
public int getValue()Returns the value of this symbol.- Returns:
- the value of this symbol
-
getValueAsString
Returns a string equivalent of the value of this symbol.- Returns:
- a string equivalent of the value of this symbol
-
getSectionNumber
public int getSectionNumber()Returns the section number if this symbol.- Returns:
- the section number if this symbol
-
getSectionNumberAsString
Returns a string equivalent of the section number of this symbol.- Returns:
- a string equivalent of the section number of this symbol
-
getType
public int getType()Returns the type of this symbol.- Returns:
- the type of this symbol
-
getTypeAsString
Returns a string equivalent of the type of this symbol.- Returns:
- a string equivalent of the type of this symbol
-
getStorageClass
public int getStorageClass()Returns the storage class of this symbol.- Returns:
- the storage class of this symbol
-
getStorageClassAsString
Returns a string equivalent of the storage class of this symbol.- Returns:
- a string equivalent of the storage class of this symbol
-
getNumberOfAuxSymbols
public int getNumberOfAuxSymbols()Returns the number of auxiliary symbols defined with this symbol.- Returns:
- the number of auxiliary symbols defined with this symbol
-
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 interfaceStructConverter
- Returns:
- returns a structure datatype representing the implementor of this interface
- Throws:
DuplicateNameException
- when a datatype of the same name already existsIOException
- if an IO-related error occurs- See Also:
-
toString
-