Class ComLoader
java.lang.Object
ghidra.app.util.opinion.AbstractProgramLoader
ghidra.app.util.opinion.AbstractLibrarySupportLoader
ghidra.app.util.opinion.ComLoader
- All Implemented Interfaces:
Loader, ExtensionPoint, Comparable<Loader>
A
Loader for processing old-style DOS COM executables-
Nested Class Summary
Nested classes/interfaces inherited from class AbstractLibrarySupportLoader
AbstractLibrarySupportLoader.LibrarySearchPath, AbstractLibrarySupportLoader.UnprocessedLibraryNested classes/interfaces inherited from interface Loader
Loader.ImporterSettings -
Field Summary
FieldsFields inherited from class AbstractLibrarySupportLoader
DEPTH_OPTION_NAME, LIBRARY_DEST_FOLDER_OPTION_NAME, LIBRARY_SEARCH_PATH_DUMMY_OPTION_NAME, LINK_EXISTING_OPTION_NAME, LINK_SEARCH_FOLDER_OPTION_NAME, LOAD_LIBRARY_OPTION_NAME, LOAD_ONLY_LIBRARIES_OPTION_NAME, MIRROR_LAYOUT_OPTION_NAMEFields inherited from class AbstractProgramLoader
ANCHOR_LABELS_OPTION_NAME, APPLY_LABELS_OPTION_NAMEFields inherited from interface Loader
COMMAND_LINE_ARG_PREFIX, loggingDisabled, OPTIONS_PROJECT_SAVE_STATE_KEY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfindSupportedLoadSpecs(ByteProvider provider) If thisLoadersupports loading the givenByteProvider, this methods returns aCollectionof all supportedLoadSpecs that contain discovered load specification information that thisLoaderwill need to load.Returns aCollectionof file extensions associated with thisLoader.getName()booleanReturns whether or not this is a "fallback"Loader.protected voidload(Program program, Loader.ImporterSettings settings) Loads bytes in a particular format into the givenProgram.Methods inherited from class AbstractLibrarySupportLoader
createLibraryByteProvider, findLibraryInLoadedList, findLibraryInProject, getCustomLibrarySearchPaths, getDefaultOptions, getLibraryDestinationFolderPath, getLibraryDestinationSearchFolder, getLibraryLoadDepth, getLibraryNameComparator, getLibrarySearchFolders, getLibrarySearchPaths, getLinkSearchFolder, getRequiredLibraryProperty, getTier, getTierPriority, isLinkExistingLibraries, isLoadLibraries, isMirroredLayout, isValidSearchPath, loadProgram, loadProgramInto, lookupLibraryInFolder, lookupLibraryInFs, matchSupportedLoadSpec, matchSupportedLoadSpec, postLoadProgramFixups, processLibrary, shouldLoadOnlyLibraries, shouldSearchAllPaths, validateOptionsMethods inherited from class AbstractProgramLoader
createDefaultMemoryBlocks, createProgram, createProgram, generateBlockName, getLanguageService, load, loadInto, markAsFunction, markProperty, postLoadCleanup, setProgramProperties, shouldApplyProcessorLabelsByDefaultMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Loader
compareTo, createArg, getPreferredFileName, loadsIntoNewFolder, supportsLoadIntoProgram
-
Field Details
-
COM_NAME
- See Also:
-
-
Constructor Details
-
ComLoader
public ComLoader()
-
-
Method Details
-
getName
-
getAssociatedFileExtensions
Description copied from interface:LoaderReturns aCollectionof file extensions associated with thisLoader.- Returns:
- a
Collectionof file extensions associated with thisLoader
-
isFallback
public boolean isFallback()Description copied from interface:LoaderReturns whether or not this is a "fallback"Loader.Fallback loaders are only considered during the import process if no other non-fallback loaders were compatible with the thing being imported.
- Returns:
- whether or not this is a "fallback"
Loader
-
findSupportedLoadSpecs
Description copied from interface:LoaderIf thisLoadersupports loading the givenByteProvider, this methods returns aCollectionof all supportedLoadSpecs that contain discovered load specification information that thisLoaderwill need to load. If thisLoadercannot support loading the givenByteProvider, an emptyCollectionis returned.- Parameters:
provider- The bytes being loaded.- Returns:
- A
CollectionofLoadSpecs that thisLoadersupports loading, or an emptyCollectionif thisLoaderdoesn't support loading the givenByteProvider. - Throws:
IOException- if there was an IO-related issue finding theLoadSpecs.
-
load
protected void load(Program program, Loader.ImporterSettings settings) throws IOException, CancelledException Description copied from class:AbstractLibrarySupportLoaderLoads bytes in a particular format into the givenProgram.- Specified by:
loadin classAbstractLibrarySupportLoader- Parameters:
program- TheProgramto load into.settings- TheLoader.ImporterSettings- Throws:
IOException- if there was an IO-related problem loading.CancelledException- if the user cancelled the load.
-