mirror of
https://github.com/volatilityfoundation/volatility3.git
synced 2026-10-01 14:04:54 +02:00
restore pslist, add queue_head_t type class
This commit is contained in:
@@ -49,9 +49,7 @@ class PsList(interfaces.plugins.PluginInterface):
|
||||
]
|
||||
|
||||
@classmethod
|
||||
def get_list_tasks(
|
||||
cls, method: str
|
||||
) -> Callable[
|
||||
def get_list_tasks(cls, method: str) -> Callable[
|
||||
[interfaces.context.ContextInterface, str, Callable[[int], bool]],
|
||||
Iterable[interfaces.objects.ObjectInterface],
|
||||
]:
|
||||
@@ -188,9 +186,7 @@ class PsList(interfaces.plugins.PluginInterface):
|
||||
|
||||
kernel_layer = context.layers[kernel.layer_name]
|
||||
|
||||
queue_entry = kernel.object(
|
||||
object_type="queue_entry", offset=kernel.get_symbol("tasks").address
|
||||
)
|
||||
queue_entry = kernel.object_from_symbol(symbol_name="tasks")
|
||||
|
||||
seen: Dict[int, int] = {}
|
||||
for task in queue_entry.walk_list(queue_entry, "tasks", "task"):
|
||||
|
||||
@@ -21,12 +21,14 @@ class MacKernelIntermedSymbols(intermed.IntermediateSymbolTable):
|
||||
self.set_type_class("vm_map_object", extensions.vm_map_object)
|
||||
self.set_type_class("socket", extensions.socket)
|
||||
self.set_type_class("inpcb", extensions.inpcb)
|
||||
self.set_type_class("queue_entry", extensions.queue_entry)
|
||||
self.set_type_class("ifnet", extensions.ifnet)
|
||||
self.set_type_class("sockaddr_dl", extensions.sockaddr_dl)
|
||||
self.set_type_class("sockaddr", extensions.sockaddr)
|
||||
self.set_type_class("sysctl_oid", extensions.sysctl_oid)
|
||||
self.set_type_class("kauth_scope", extensions.kauth_scope)
|
||||
# https://developer.apple.com/documentation/kernel/queue_head_t
|
||||
self.set_type_class("queue_entry", extensions.queue_entry)
|
||||
self.set_type_class("queue_head_t", extensions.queue_entry)
|
||||
|
||||
|
||||
class MacUtilities(interfaces.configuration.VersionableInterface):
|
||||
|
||||
Reference in New Issue
Block a user