Commit Graph
296 Commits
Author SHA1 Message Date
Mike Auty a07691b04f Ensure scanners don't return duplicates in the overlap. 2018-05-13 20:55:54 +01:00
Mike Auty f23c4b51e4 Add in ModuleCollections for identifying symbols. 2018-05-07 00:05:01 +01:00
Mike Auty ffe2907fa0 Minor typing fix. 2018-05-01 21:22:26 +01:00
Mike Auty 4dbfdcc9dd Fix up typing and metadata usage. 2018-05-01 21:21:12 +01:00
Mike Auty 9512cbe9eb Commit metadata changeset.
Layers now accept metadata dictionaries (and chain/stack them on top of
those from lower layers).  Metadata can only be set at construction
time, and the metadata dictionary is readonly.  The hope is this will
make enumerating metadata keys across the codebase simpler.

The current metadata items that layers hold is:

architecture (Unknown | Intel32 | Intel64)
os (Unknown | Windows | Linux)
pae (bool)
page_map_offset (int)

This patchset may develop further to help enumerate all of these
(through a registration/reporting system).
2018-04-26 12:48:14 +01:00
Mike Auty 556fa29ada Deprecate/remove 'provides' attribute. 2018-04-26 12:31:33 +01:00
Mike Auty 623180ddbd Make many typing fixes, based on mypy-0.590. 2018-04-22 20:45:59 +01:00
Mike Auty 59283ad892 Refactor SimpleTypes to BaseTypes since we've added Disassembly. 2018-04-15 15:39:48 +01:00
Mike Auty f25d059d49 Add in file producer/consumer API. 2018-04-14 19:51:49 +01:00
Mike Auty 90641befd2 Remove the TZ*Values and rely on datetime.datetime directly. 2018-04-12 15:43:02 +01:00
Mike Auty d8f497eb71 Allow unpickling of PrimitiveObjects. 2018-04-08 22:25:46 +01:00
Mike Auty 3f9657a2e1 Remove unnecessary type information given it's in the function signature. 2018-04-04 00:41:43 +01:00
Mike Auty 1bae0f26c9 Make sure we don't get in getattr loops. 2018-04-04 00:40:30 +01:00
Mike Auty 4b6b68cf2c Fix up a typo that accidentally got introduced. 2018-04-02 02:20:16 +01:00
Mike Auty e1fed0af20 Rejig configuration deleting again
Had second thoughts and deletion should only remove data, not sub
hierarchies.  If the entire hierarchy needs clearing out, it'll need to
be done manually, or by splicing in an empty HierarchicalDict.
2018-04-02 02:18:20 +01:00
Mike Auty a815e39a0c Fix up the configuration deletion logic. 2018-04-02 02:13:39 +01:00
Mike Auty 0d075e6ee3 Fix major (but easily missable) bug in the configuration system. 2018-04-01 22:54:28 +01:00
Mike Auty eaadd53951 Allow the optional setting of requirements to be changed (for sub-plugins). 2018-03-25 18:16:34 +01:00
Mike Auty 10f65a67c8 Ensure the config/branch methods always return. 2018-03-25 18:13:41 +01:00
Mike Auty efada8a15f Bring relative_child_offset typing in line with practice. 2018-03-23 16:04:03 +00:00
Mike Auty 396dc8f8e4 Add in the ability for plugins to report their progress if applicable. 2018-03-23 15:41:55 +00:00
Dave Lassalleandikelos 1ae43783aa create utility function for converting windows timestamps 2018-03-21 18:42:38 +00:00
Mike Auty 2522d588ea Pylinting and typing fix. 2018-03-21 17:04:10 +00:00
Mike Auty c6a58ffc06 Fix up sphinx warnings. 2018-03-20 22:30:05 +00:00
Mike Auty ccb1903003 Fix up Symbol.name issue as spotted by npetroni. 2018-03-20 17:22:38 +00:00
Mike Auty 4bf22fbec8 Revert "Reorder the imports for python 3.5.2."
This reverts commit 3aad271913.
2018-03-20 17:01:18 +00:00
Mike Auty 3aad271913 Reorder the imports for python 3.5.2. 2018-03-20 15:43:13 +00:00
Mike Auty cbce5c6184 Expose the sanitize method, since it's necessary for accessing columns. 2018-03-14 01:07:58 +00:00
Mike Auty 6766498e4a Fix up saving symbol_space contruction options. 2018-03-11 20:59:47 +00:00
Mike Auty 674394cd69 Fix up TreeGrid typing information in places. 2018-03-08 01:20:55 +00:00
Mike Auty c605cbd182 Add in TZAware and TZNaive values for TreeGrids. 2018-03-08 01:20:34 +00:00
Mike Auty de9ad62412 Add in support for AbsentValues. 2018-03-08 00:26:25 +00:00
Mike Auty 8b29b1f668 Rework the import ordering for requirements/configurations. 2018-02-12 00:51:05 +00:00
Mike Auty 994bd7c394 Fix up the finding of swap layers so swap actually works. 2018-02-11 21:41:39 +00:00
Mike Auty b7c68f4e98 Rework LayerListRequirement from a ListRequirement to a MultiRequirement. 2018-02-11 18:35:18 +00:00
Mike Auty e8212df604 Improve ListRequirement handling (default values, etc). 2018-02-11 02:16:53 +00:00
Mike Auty b7c8961d50 Fix up the addition of the append method. 2018-02-10 23:43:29 +00:00
Mike Auty f3b6b5311f Fix up a couple extra typing issues, improving code quality. 2018-02-10 22:51:56 +00:00
Mike Auty 7cb0330d04 Fix and correctly type ListRequirements. 2018-02-10 22:41:39 +00:00
Mike Auty c203663f0b Refactor requirements to support a list of swap layers. 2018-01-28 14:48:50 +00:00
Mike Auty 942de5f166 Finish adding type-annotations thoughout the code. 2017-12-13 20:48:52 +00:00
Mike Auty ee12b81f4a Add in type-annotations for renderers and start on symbols. 2017-12-13 20:48:52 +00:00
Mike Auty ac12098317 Add type-annotations for reamining layer files. 2017-12-13 20:48:52 +00:00
Mike Auty f40fae197d Convert to python3.5 syntax (no local type-annotations). 2017-12-13 20:48:52 +00:00
Mike Auty 21b4506b7b Add in type-annotations for the remaining interfaces. 2017-12-13 20:48:52 +00:00
Mike Auty 50b60c0df6 Add in more interfaces (and fix additional errors now that type information is available). 2017-12-13 20:48:52 +00:00
Mike Auty 5536412a5e Add in initial work at interface type-annotations. 2017-12-13 20:48:52 +00:00
Mike Auty d7d13eb19c Add type annotations to most of the automagic files. 2017-12-13 20:48:52 +00:00
Mike Auty 0ecf68af0f Support table remapping for referenced symbol names. 2017-11-27 14:39:46 +00:00
Mike Auty e43ca15630 Improve the logging for scan failures. 2017-11-24 00:39:28 +00:00