From df86ce32ae9e78455b1a402a124c9c247b1777f3 Mon Sep 17 00:00:00 2001 From: Kelly Kelly Date: Thu, 1 Aug 2019 12:49:57 -0400 Subject: [PATCH] Modified code in load for setting the Plaso module to off by default --- .../autopsy/ingest/IngestJobSettings.java | 28 ++++++++++++------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/Core/src/org/sleuthkit/autopsy/ingest/IngestJobSettings.java b/Core/src/org/sleuthkit/autopsy/ingest/IngestJobSettings.java index c1692bab86..f733af6f46 100644 --- a/Core/src/org/sleuthkit/autopsy/ingest/IngestJobSettings.java +++ b/Core/src/org/sleuthkit/autopsy/ingest/IngestJobSettings.java @@ -331,27 +331,35 @@ public final class IngestJobSettings { } /** - * Hardcoding Plaso to be disabled by default. Loaded modules is passed - * below as the list default list of enabled modules so briefly + * Hard coding Plaso to be disabled by default. loadedModuleNames is passed + * below as the default list of enabled modules so briefly * remove Plaso from loaded modules to get the list of enabled and - * disabled modules. Then put Plaso back into loadedModulesNames to let + * disabled modules names. Then put Plaso back into loadedModulesNames to let * the rest of the code continue as before. */ - HashSet hardCodedDisabledModules = new HashSet<>(); - if(loadedModuleNames.contains("Plaso")) { - loadedModuleNames.remove("Plaso"); - hardCodedDisabledModules.add("Plaso"); + final String plasoModuleName = "Plaso"; + boolean plasoLoaded = loadedModuleNames.contains(plasoModuleName); + if (plasoLoaded) { + loadedModuleNames.remove(plasoModuleName); } /** * Get the enabled/disabled ingest modules settings for this context. By - * default, all loaded modules are enabled. + * default, all loaded modules except Plaso are enabled. */ HashSet enabledModuleNames = getModulesNames(executionContext, IngestJobSettings.ENABLED_MODULES_PROPERTY, makeCsvList(loadedModuleNames)); - HashSet disabledModuleNames = getModulesNames(executionContext, IngestJobSettings.DISABLED_MODULES_PROPERTY, hardCodedDisabledModules.isEmpty() ? "" : makeCsvList(hardCodedDisabledModules)); //NON-NLS + HashSet disabledModuleNames = getModulesNames(executionContext, IngestJobSettings.DISABLED_MODULES_PROPERTY, plasoModuleName); //NON-NLS + + // If plaso was loaded, but appears in neither the enabled nor the + // disabled list, add it to the disabled list. + if (!enabledModuleNames.contains(plasoModuleName) && !disabledModuleNames.contains(plasoModuleName)) { + disabledModuleNames.add(plasoModuleName); + } //Put plaso back into loadedModuleNames - loadedModuleNames.addAll(hardCodedDisabledModules); + if (plasoLoaded) { + loadedModuleNames.add(plasoModuleName); + } /** * Check for missing modules and create warnings if any are found.