Class LinkEditDataCommand
java.lang.Object
ghidra.app.util.bin.format.macho.commands.LoadCommand
ghidra.app.util.bin.format.macho.commands.LinkEditDataCommand
- All Implemented Interfaces:
StructConverter
- Direct Known Subclasses:
CodeSignatureCommand,DataInCodeCommand,DyldChainedFixupsCommand,DyldExportsTrieCommand,FunctionStartsCommand
Represents a linkedit_data_command structure
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionGets the name of this load commandlongGets the file offset of this load command's "linker data".longGets the file size of this load command's "linker data".voidmarkup(Program program, MachHeader header, String source, TaskMonitor monitor, MessageLog log) Marks up thisLoadCommanddata with data structures and comments.voidmarkupRawBinary(MachHeader header, FlatProgramAPI api, Address baseAddress, ProgramModule parentModule, TaskMonitor monitor, MessageLog log) Marks-up thisLoadCommandwith data structures and comments.Returns a structure datatype representing the contents of the implementor of this interface.Methods inherited from class ghidra.app.util.bin.format.macho.commands.LoadCommand
checkCount, createFragment, createPlateComment, fileOffsetToAddress, getCommandSize, getCommandType, getContextualName, getStartIndex, markupPlateComment, updateMonitor
-
Field Details
-
dataoff
protected long dataoff -
datasize
protected long datasize -
dataReader
-
-
Method Details
-
getLinkerDataOffset
public long getLinkerDataOffset()Description copied from class:LoadCommandGets the file offset of this load command's "linker data". Not all load commands with data will have linker data. Linker data typically resides in the __LINKEDIT segment.- Overrides:
getLinkerDataOffsetin classLoadCommand- Returns:
- The file offset of this load command's "linker data", or 0 if it has no linker data
-
getLinkerDataSize
public long getLinkerDataSize()Description copied from class:LoadCommandGets the file size of this load command's "linker data". Not all load commands with data will have linker data. Linker data typically resides in the __LINKEDIT segment.- Overrides:
getLinkerDataSizein classLoadCommand- Returns:
- The file size of this load command's "linker data", or 0 if it has no linker data
-
getCommandName
Description copied from class:LoadCommandGets the name of this load command- Specified by:
getCommandNamein classLoadCommand- Returns:
- The name of this load command
-
markup
public void markup(Program program, MachHeader header, String source, TaskMonitor monitor, MessageLog log) throws CancelledException Description copied from class:LoadCommandMarks up thisLoadCommanddata with data structures and comments. Assumes the program was imported as a Mach-O.- Overrides:
markupin classLoadCommand- Parameters:
program- TheProgramto mark upheader- The Mach-O headersource- A name that represents where the header came from (could be null)monitor- A cancellable task monitorlog- The log- Throws:
CancelledException- if the user cancelled the operation
-
markupRawBinary
public void markupRawBinary(MachHeader header, FlatProgramAPI api, Address baseAddress, ProgramModule parentModule, TaskMonitor monitor, MessageLog log) Description copied from class:LoadCommandMarks-up thisLoadCommandwith data structures and comments. Assumes the program was imported as a Raw Binary.- Overrides:
markupRawBinaryin classLoadCommand- Parameters:
header- The Mach-O headerapi- AFlatProgramAPIbaseAddress- The base address of the programparentModule- The parentmoduleto create fragmentsmonitor- A cancellable task monitorlog- The log- See Also:
-
toDataType
Description copied from interface:StructConverterReturns 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.
- 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:
-