diff --git a/volatility/framework/symbols/__init__.py b/volatility/framework/symbols/__init__.py index 1cd4c87b9..7249fac71 100644 --- a/volatility/framework/symbols/__init__.py +++ b/volatility/framework/symbols/__init__.py @@ -53,7 +53,8 @@ class SymbolSpace(interfaces.symbols.SymbolSpaceInterface, validity.ValidityRout for symbol_name in self._dict[table].get_symbols_by_type(type_name): yield table + constants.BANG + symbol_name - def get_symbols_by_location(self, offset: int, table_name: str = None) -> typing.Iterable[str]: + def get_symbols_by_location(self, offset: int, size: typing.Optional[int] = 0, table_name: str = None) -> \ + typing.Iterable[str]: """Returns all symbols that exist at a specific relative address""" table_list = self._dict.values() # type: typing.Iterable[interfaces.symbols.BaseSymbolTableInterface] if table_name is not None: @@ -62,7 +63,7 @@ class SymbolSpace(interfaces.symbols.SymbolSpaceInterface, validity.ValidityRout else: table_list = [] for table in table_list: - for symbol_name in table.get_symbols_by_location(offset = offset): + for symbol_name in table.get_symbols_by_location(offset = offset, size = size): yield table.name + constants.BANG + symbol_name ### Space functions