diff --git a/plaso/cli/extraction_tool.py b/plaso/cli/extraction_tool.py index 124fc2a2cc..e291b83a33 100644 --- a/plaso/cli/extraction_tool.py +++ b/plaso/cli/extraction_tool.py @@ -573,6 +573,9 @@ def _ProcessSources(self, session, storage_writer): path_spec=path_spec) source_configurations.append(source_configuration) + # TODO: check if source configuration for the path_spec already exists. + storage_writer.AddAttributeContainer(source_configuration) + # TODO: improve to detect more than 1 system configurations. # TODO: improve to add volumes to system configuration. system_configuration = ( diff --git a/plaso/containers/artifacts.py b/plaso/containers/artifacts.py index f307cf52ac..f3419cc27b 100644 --- a/plaso/containers/artifacts.py +++ b/plaso/containers/artifacts.py @@ -415,6 +415,10 @@ class SourceConfigurationArtifact(ArtifactAttributeContainer): CONTAINER_TYPE = 'source_configuration' + SCHEMA = { + 'mount_path': 'str', + 'path_spec': 'dfvfs.PathSpec'} + def __init__(self, path_spec=None): """Initializes a source configuration artifact. diff --git a/plaso/storage/sqlite/sqlite_file.py b/plaso/storage/sqlite/sqlite_file.py index 27d12c282d..208beb088e 100644 --- a/plaso/storage/sqlite/sqlite_file.py +++ b/plaso/storage/sqlite/sqlite_file.py @@ -114,8 +114,7 @@ class SQLiteStorageFile(interface.BaseStore): 'hostname', 'mount_point', 'operating_system', - 'path', - 'source_configuration') + 'path') # Container types that are referenced from other container types. _REFERENCED_CONTAINER_TYPES = (