diff --git a/volatility/framework/plugins/linux/lsmod.py b/volatility/framework/plugins/linux/lsmod.py index 4932a51d7..1f66f8f6d 100644 --- a/volatility/framework/plugins/linux/lsmod.py +++ b/volatility/framework/plugins/linux/lsmod.py @@ -2,6 +2,8 @@ typically found in Linux's /proc file system. """ +from typing import List + from volatility.framework import renderers, constants, interfaces from volatility.framework.automagic import linux from volatility.framework.configuration import requirements @@ -14,7 +16,7 @@ class Lsmod(plugins.PluginInterface): """Lists loaded kernel modules""" @classmethod - def get_requirements(cls): + def get_requirements(cls) -> List[interfaces.configuration.RequirementInterface]: return [requirements.TranslationLayerRequirement(name = 'primary', description = 'Kernel Address Space', architectures = ["Intel32", "Intel64"]), diff --git a/volatility/framework/plugins/linux/lsof.py b/volatility/framework/plugins/linux/lsof.py index eccc97570..c7166082e 100644 --- a/volatility/framework/plugins/linux/lsof.py +++ b/volatility/framework/plugins/linux/lsof.py @@ -2,8 +2,9 @@ typically found in Linux's /proc file system. """ import logging +from typing import List -from volatility.framework import renderers +from volatility.framework import renderers, interfaces from volatility.framework.automagic import linux from volatility.framework.configuration import requirements from volatility.framework.interfaces import plugins @@ -17,7 +18,7 @@ class Lsof(plugins.PluginInterface): """Lists all memory maps for all processes""" @classmethod - def get_requirements(cls): + def get_requirements(cls) -> List[interfaces.configuration.RequirementInterface]: return [requirements.TranslationLayerRequirement(name = 'primary', description = 'Kernel Address Space', architectures = ["Intel32", "Intel64"]), diff --git a/volatility/framework/plugins/timeliner.py b/volatility/framework/plugins/timeliner.py index 40615c7a4..1c7a4d91b 100644 --- a/volatility/framework/plugins/timeliner.py +++ b/volatility/framework/plugins/timeliner.py @@ -60,7 +60,7 @@ class Timeliner(interfaces.plugins.PluginInterface): return [plugin_class for plugin_class in plugin_list if filter_func(plugin_class.__name__, selected_list)] @classmethod - def get_requirements(cls): + def get_requirements(cls) -> List[interfaces.configuration.RequirementInterface]: return [requirements.StringRequirement(name = 'plugins', description = "Comma separated list of plugins to run", optional = True, diff --git a/volatility/framework/plugins/windows/handles.py b/volatility/framework/plugins/windows/handles.py index 576680208..f66cba4e7 100644 --- a/volatility/framework/plugins/windows/handles.py +++ b/volatility/framework/plugins/windows/handles.py @@ -1,8 +1,9 @@ import logging -from typing import Optional +from typing import List, Optional + +import volatility.plugins.windows.pslist as pslist import volatility.framework.interfaces.plugins as interfaces_plugins -import volatility.plugins.windows.pslist as pslist from volatility.framework import constants, exceptions, renderers, interfaces from volatility.framework.configuration import requirements from volatility.framework.objects import utility @@ -29,7 +30,7 @@ class Handles(interfaces_plugins.PluginInterface): self._level_mask = 7 @classmethod - def get_requirements(cls): + def get_requirements(cls) -> List[interfaces.configuration.RequirementInterface]: # Since we're calling the plugin, make sure we have the plugin's requirements return [requirements.TranslationLayerRequirement(name = 'primary', description = 'Kernel Address Space', diff --git a/volatility/framework/plugins/windows/modules.py b/volatility/framework/plugins/windows/modules.py index d92c926b0..682067a71 100644 --- a/volatility/framework/plugins/windows/modules.py +++ b/volatility/framework/plugins/windows/modules.py @@ -1,4 +1,5 @@ -import volatility.framework.interfaces.plugins as plugins +from typing import List + from volatility.framework import constants from volatility.framework import exceptions, interfaces from volatility.framework import renderers @@ -6,11 +7,11 @@ from volatility.framework.configuration import requirements from volatility.framework.renderers import format_hints -class Modules(plugins.PluginInterface): +class Modules(interfaces.plugins.PluginInterface): """Lists the loaded kernel modules""" @classmethod - def get_requirements(cls): + def get_requirements(cls) -> List[interfaces.configuration.RequirementInterface]: return [requirements.TranslationLayerRequirement(name = 'primary', description = 'Kernel Address Space', architectures = ["Intel32", "Intel64"]), diff --git a/volatility/framework/plugins/windows/poolscanner.py b/volatility/framework/plugins/windows/poolscanner.py index 4932e63cb..bab947411 100644 --- a/volatility/framework/plugins/windows/poolscanner.py +++ b/volatility/framework/plugins/windows/poolscanner.py @@ -3,6 +3,7 @@ import logging from typing import Optional, Tuple, List, Generator import volatility.plugins.windows.handles as handles + from volatility.framework import constants, interfaces, renderers, validity, exceptions, symbols from volatility.framework.configuration import requirements from volatility.framework.interfaces import plugins, configuration @@ -53,7 +54,7 @@ class PoolScanner(plugins.PluginInterface): """A generic pool scanner plugin""" @classmethod - def get_requirements(cls): + def get_requirements(cls) -> List[interfaces.configuration.RequirementInterface]: return [requirements.TranslationLayerRequirement(name = 'primary', description = 'Kernel Address Space', architectures = ["Intel32", "Intel64"]), diff --git a/volatility/framework/plugins/windows/registry/printkey.py b/volatility/framework/plugins/windows/registry/printkey.py index 8a3b6ca88..b499906f4 100644 --- a/volatility/framework/plugins/windows/registry/printkey.py +++ b/volatility/framework/plugins/windows/registry/printkey.py @@ -1,9 +1,8 @@ import datetime import logging -from typing import Generator, Sequence +from typing import Generator, List, Sequence -import volatility.framework.interfaces.plugins as plugins -from volatility.framework import objects, renderers, exceptions +from volatility.framework import objects, renderers, exceptions, interfaces from volatility.framework.configuration import requirements from volatility.framework.layers.registry import RegistryHive from volatility.framework.renderers import TreeGrid, conversion, format_hints @@ -12,11 +11,11 @@ from volatility.framework.symbols.windows.extensions.registry import RegValueTyp vollog = logging.getLogger(__name__) -class PrintKey(plugins.PluginInterface): +class PrintKey(interfaces.plugins.PluginInterface): """Lists the registry keys under a hive or specific key value""" @classmethod - def get_requirements(cls): + def get_requirements(cls) -> List[interfaces.configuration.RequirementInterface]: return [requirements.TranslationLayerRequirement(name = 'primary', description = 'Kernel Address Space', architectures = ["Intel32", "Intel64"]), diff --git a/volatility/framework/plugins/windows/vadinfo.py b/volatility/framework/plugins/windows/vadinfo.py index ed5e45b4a..087c615cf 100644 --- a/volatility/framework/plugins/windows/vadinfo.py +++ b/volatility/framework/plugins/windows/vadinfo.py @@ -1,8 +1,8 @@ import logging -from typing import Callable, Generator, Iterable +from typing import Callable, List, Generator, Iterable -import volatility.framework.interfaces.plugins as interfaces_plugins import volatility.plugins.windows.pslist as pslist + from volatility.framework import renderers, interfaces from volatility.framework.configuration import requirements from volatility.framework.objects import utility @@ -27,7 +27,7 @@ winnt_protections = { } -class VadInfo(interfaces_plugins.PluginInterface): +class VadInfo(interfaces.plugins.PluginInterface): """Lists process memory ranges""" def __init__(self, *args, **kwargs): @@ -35,7 +35,7 @@ class VadInfo(interfaces_plugins.PluginInterface): self._protect_values = None @classmethod - def get_requirements(cls): + def get_requirements(cls) -> List[interfaces.configuration.RequirementInterface]: # Since we're calling the plugin, make sure we have the plugin's requirements return [requirements.TranslationLayerRequirement(name = 'primary', description = 'Kernel Address Space',