Class GolangDWARFFunctionFixup
java.lang.Object
ghidra.app.util.bin.format.golang.GolangDWARFFunctionFixup
- All Implemented Interfaces:
DWARFFunctionFixup
,ExtensionPoint
Fixups for golang functions.
"·" (middle dot) -> "."
"∕" (weird slash) -> "/"
Fixes storage of parameters to match the go callspec and modifies parameter lists to match Ghidra's capabilities.
Special characters used by golang in symbol names are fixed up in DWARFProgram.fixupSpecialMeaningCharacters():
-
Field Summary
FieldsFields inherited from interface ghidra.app.util.bin.format.dwarf4.funcfixup.DWARFFunctionFixup
PRIORITY_LAST, PRIORITY_NORMAL, PRIORITY_NORMAL_EARLY, PRIORITY_NORMAL_LATE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
fixupDWARFFunction
(DWARFFunction dfunc, Function gfunc) Called before aDWARFFunction
is used to create a Ghidra Function.static boolean
isGolangFunction
(DWARFFunction dfunc) Returns true if the specifiedDWARFFunction
wrapper refers to a function in a golang compile unit.
-
Field Details
-
GOLANG_API_EXPORT
-
-
Constructor Details
-
GolangDWARFFunctionFixup
public GolangDWARFFunctionFixup()
-
-
Method Details
-
isGolangFunction
Returns true if the specifiedDWARFFunction
wrapper refers to a function in a golang compile unit.- Parameters:
dfunc
-DWARFFunction
- Returns:
- boolean true or false
-
fixupDWARFFunction
Description copied from interface:DWARFFunctionFixup
Called before aDWARFFunction
is used to create a Ghidra Function.If processing of the function should terminate (and the function be skipped), throw a
DWARFException
.- Specified by:
fixupDWARFFunction
in interfaceDWARFFunctionFixup
- Parameters:
dfunc
-DWARFFunction
info read from DWARF about the functiongfunc
- the GhidraFunction
that will receive the DWARF information
-