Package rekall :: Module scan :: Class PointerScanner
[frames] | no frames]

Class PointerScanner

source code


Scan for a bunch of pointers at the same time.

This scanner takes advantage of the fact that usually the most significant bytes of a group of pointers is the same. This common part is scanned for first, thereby taking advantage of the scanner skippers.

Nested Classes
  __metaclass__
Automatic Plugin Registration through metaclasses. (Inherited from rekall.scan.BaseScanner)
  top_level_class
Base class for all scanners. (Inherited from rekall.scan.BaseScanner)
Instance Methods
 
__init__(self, pointers=None, **kwargs)
Creates the Pointer Scanner.
source code
 
build_constraints(self) (Inherited from rekall.scan.BaseScanner) source code
 
check_addr(self, offset, buffer_as=None)
Check an address. (Inherited from rekall.scan.BaseScanner)
source code
 
scan(self, offset=0, maxlen=None, end=None)
Scan the region from offset for maxlen. (Inherited from rekall.scan.BaseScanner)
source code
 
skip(self, buffer_as, offset)
Skip uninteresting regions. (Inherited from rekall.scan.BaseScanner)
source code

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Methods
 
ImplementationByClass(self, name) source code
 
ImplementationByName(self, name) source code
Class Variables
  checks = () (Inherited from rekall.scan.BaseScanner)
  classes = {'BaseScanner': <class 'rekall.scan.BaseScanner'>, '... (Inherited from rekall.scan.BaseScanner)
  classes_by_name = {None: [<class 'rekall.scan.BaseScanner'>, <... (Inherited from rekall.scan.BaseScanner)
  overlap = 1024 (Inherited from rekall.scan.BaseScanner)
  plugin_feature = 'BaseScanner' (Inherited from rekall.scan.BaseScanner)
  progress_message = 'Scanning 0x%(offset)08X with %(name)s' (Inherited from rekall.scan.BaseScanner)
Properties

Inherited from object: __class__

Method Details

__init__(self, pointers=None, **kwargs)
(Constructor)

source code 
Creates the Pointer Scanner.

Args:
  pointers: A list of Pointer objects, or simply memory addresses. This
    scanner finds direct references to these addresses in memory.

Overrides: object.__init__

ImplementationByClass(self, name)
Class Method

source code 
Overrides: BaseScanner.ImplementationByClass

ImplementationByName(self, name)
Class Method

source code 
Overrides: BaseScanner.ImplementationByName