mirror of
https://github.com/volatilityfoundation/volatility3.git
synced 2026-09-12 12:47:39 +02:00
Add in plugin function capability (and make plugin validation centralized on plugin construction).
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
from volatility.framework import interfaces
|
||||
|
||||
|
||||
def plugin_function(plugin, context, config_path, **kwargs):
|
||||
"""Run the plugin as a function"""
|
||||
if not isinstance(plugin, interfaces.plugins.PluginInterface):
|
||||
raise TypeError("Plugin must be a PluginInterface derived object")
|
||||
if not isinstance(context, interfaces.context.ContextInterface):
|
||||
raise TypeError("Context must be a ContextInterface derived object")
|
||||
if not isinstance(config_path, str):
|
||||
raise TypeError("Config_path must a be string")
|
||||
constructed = plugin(context, config_path)
|
||||
return constructed(**kwargs)
|
||||
|
||||
Reference in New Issue
Block a user