Package ghidra.app.util.opinion
Class DefLoader
- java.lang.Object
-
- ghidra.app.util.opinion.AbstractProgramLoader
-
- ghidra.app.util.opinion.AbstractLibrarySupportLoader
-
- ghidra.app.util.opinion.DefLoader
-
- All Implemented Interfaces:
Loader
,ExtensionPoint
,java.lang.Comparable<Loader>
public class DefLoader extends AbstractLibrarySupportLoader
ALoader
for processing Microsoft DEF files.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DEF_NAME
static java.lang.String
NO_MAGIC
-
Fields inherited from class ghidra.app.util.opinion.AbstractLibrarySupportLoader
LIB_OPTION_NAME, SYM_OPTION_NAME
-
Fields inherited from class ghidra.app.util.opinion.AbstractProgramLoader
ANCHOR_LABELS_OPTION_NAME, APPLY_LABELS_OPTION_NAME
-
Fields inherited from interface ghidra.app.util.opinion.Loader
COMMAND_LINE_ARG_PREFIX
-
-
Constructor Summary
Constructors Constructor Description DefLoader()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Collection<LoadSpec>
findSupportedLoadSpecs(ByteProvider provider)
If thisLoader
supports loading the givenByteProvider
, this methods returns aCollection
of all supportedLoadSpec
s that contain discovered load specification information that thisLoader
will need to load.java.lang.String
getName()
void
load(ByteProvider provider, LoadSpec loadSpec, java.util.List<Option> options, Program prog, TaskMonitor monitor, MessageLog log)
Loads bytes in a particular format into the givenProgram
.-
Methods inherited from class ghidra.app.util.opinion.AbstractLibrarySupportLoader
createExportsFile, findAlreadyImportedLibrary, getDefaultOptions, getLoadSpec, getTier, getTierPriority, importLibrary, importLibrary, isCaseInsensitiveLibraryFilenames, loadProgram, loadProgramInto, postLoadProgramFixups, validateOptions
-
Methods inherited from class ghidra.app.util.opinion.AbstractProgramLoader
createDefaultMemoryBlocks, createProgram, generateBlockName, getLanguageService, load, loadInto, markAsFunction, release, shouldApplyProcessorLabelsByDefault
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface ghidra.app.util.opinion.Loader
compareTo, getPreferredFileName, supportsLoadIntoProgram
-
-
-
-
Field Detail
-
DEF_NAME
public static final java.lang.String DEF_NAME
- See Also:
- Constant Field Values
-
NO_MAGIC
public static final java.lang.String NO_MAGIC
- See Also:
- Constant Field Values
-
-
Method Detail
-
findSupportedLoadSpecs
public java.util.Collection<LoadSpec> findSupportedLoadSpecs(ByteProvider provider) throws java.io.IOException
Description copied from interface:Loader
If thisLoader
supports loading the givenByteProvider
, this methods returns aCollection
of all supportedLoadSpec
s that contain discovered load specification information that thisLoader
will need to load. If thisLoader
cannot support loading the givenByteProvider
, an emptyCollection
is returned.- Parameters:
provider
- The bytes being loaded.- Returns:
- A
Collection
ofLoadSpec
s that thisLoader
supports loading, or an emptyCollection
if thisLoader
doesn't support loading the givenByteProvider
. - Throws:
java.io.IOException
- if there was an IO-related issue finding theLoadSpec
s.
-
load
public void load(ByteProvider provider, LoadSpec loadSpec, java.util.List<Option> options, Program prog, TaskMonitor monitor, MessageLog log) throws java.io.IOException
Description copied from class:AbstractLibrarySupportLoader
Loads bytes in a particular format into the givenProgram
.- Specified by:
load
in classAbstractLibrarySupportLoader
- Parameters:
provider
- The bytes to load.loadSpec
- TheLoadSpec
to use during load.options
- The load options.prog
- TheProgram
to load into.monitor
- A cancelable task monitor.log
- The message log.- Throws:
java.io.IOException
- if there was an IO-related problem loading.
-
-