Commit Graph
117 Commits
Author SHA1 Message Date
Mike Auty 059be517fc Fix up minor typing issues. 2018-08-29 23:29:00 +01:00
Mike Auty 3a6b4ad35c Add in the has_member method for objects and templates. 2018-08-29 22:54:56 +01:00
Mike Auty d08c29ffab Improve style to use default iterators rather than explicit ones. 2018-08-05 16:18:53 +01:00
Mike Auty b1d46f843b Convert documentation to napoleon/Google format docstrings. 2018-08-05 15:52:12 +01:00
Mike Auty 7fc19ef110 Updating typing information. 2018-08-05 15:02:11 +01:00
Mike Auty bca972f28a Remove the python implementation of __getattribute__ for speed.
The __getattribute__ method is called for *all* attribute lookups, and
the python implementation is likely slow.  The only function the python
implementation provided was to check that properties started with
helper_.  Since this only provided a log message, we could add it back
in only if the log level is high enough?  Either way, it's not
significant enough to warrant costing extra time in every attribute
lookup on every object.
2018-07-30 23:58:02 +01:00
Mike Auty 552101b593 Attempt to reduce the amount of time taken in calling templates. 2018-07-30 23:53:00 +01:00
Mike Auty 79d2bab44d A few additional typing fixes. 2018-07-22 13:29:43 +01:00
Mike Auty 4897b7ab81 Fix up some typing errors. 2018-07-22 13:19:20 +01:00
Mike Auty 106a0cb6fd Rework the array_of_pointers utility function.
It now makes use of the original array's symbol table to get the pointer
template, such that the size of the pointer is correct according to the
original table.  Resolves "pointer.size" attribute errors (firing inside
a property and thus throwing off unusual exceptions).
2018-07-18 22:35:13 +01:00
Mike Auty d9ed86bcc5 Ensure we return the correct values for dir(). 2018-06-16 14:29:51 +01:00
Michael LighandMike Auty fb57e2c5f2 wininfo, procdump, dlldump, and json for pe & kdbg 2018-06-12 08:40:21 +01:00
Mike Auty 7a52ac9deb Fix a large number of typing issues.
There are several instances where mypy didn't detect

if blah is not None:
    blah = thing

and so were rewritten as:

blah = blah or thing
2018-06-04 01:25:02 +01:00
Mike Auty 623180ddbd Make many typing fixes, based on mypy-0.590. 2018-04-22 20:45:59 +01:00
Mike Auty 6fdf577058 Fix up another typing warning. 2018-04-12 14:57:10 +01:00
Mike Auty 66af2f16de Fix more typing issues. 2018-04-12 14:09:11 +01:00
Mike Auty c758c249d0 Fix classing issue introduced by recent pickling work. 2018-04-11 20:54:48 +01:00
Mike Auty 8ac434ade9 Merge branch 'master' of github.com:volatilityfoundation/volatility3 2018-04-11 15:39:38 +01:00
Mike Auty 133eb916cf Handle bad unix timestamps. 2018-04-11 15:39:32 +01:00
Mike Auty 470b8e1bea More typing updates to allow for string subtypes. 2018-04-11 09:34:09 +01:00
Mike Auty 3fc17f16bd Change the type for array of pointers to accept any object. 2018-04-11 09:25:47 +01:00
Mike Auty 1f733e7dc4 Make sure we don't get in a getattr loop.
This appears to get in a loop when it's been unpickled by
multiprocessing.  My guess is that it's trying to set _concrete_members
without it being done in __init__ and there gets in a loop.

We ensure then when doing a look-up inside __getattr__, it happens using
__getattribute__.
2018-04-08 23:28:14 +01:00
Mike Auty d8f497eb71 Allow unpickling of PrimitiveObjects. 2018-04-08 22:25:46 +01:00
Mike Auty d8cdd79843 Add in pointer is_readable method to check if the pointer would translate properly. 2018-03-24 11:00:22 +00:00
Mike Auty efada8a15f Bring relative_child_offset typing in line with practice. 2018-03-23 16:04:03 +00:00
Mike Auty 6482059521 Fix up typing issues identified by mypy. 2018-03-22 00:44:49 +00:00
Dave Lassalleandikelos 1ae43783aa create utility function for converting windows timestamps 2018-03-21 18:42:38 +00:00
Mike Auty bc8429a2b0 Convert all helper_ properties to get_ methods. 2018-03-09 00:47:00 +00:00
Mike Auty 69ec16ded3 Fix up the signatures for the overloaded __getitem__ method. 2017-12-13 23:21:31 +00:00
Mike Auty f50a0b715d Add in object type-annotations. 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 d7d13eb19c Add type annotations to most of the automagic files. 2017-12-13 20:48:52 +00:00
Mike Auty be1ebf03b0 Don't forget the constants import. 2017-11-09 23:16:46 +00:00
Mike Auty 18b84e31a5 Don't forget the constants import. 2017-11-09 23:16:30 +00:00
Mike Auty 042ff5ca25 Use .vol.count for consistency. 2017-10-09 00:19:05 +01:00
Mike Auty 8dc6401ad8 Add in gentle deprecation warnings about non-helper properties to prevent member confusion. 2017-10-08 23:02:13 +01:00
Mike Auty 42579ca619 Allow subtypes for array_of_pointers to be strings. 2017-10-05 00:30:16 +01:00
Mike Auty 5fbc90e699 Add in utility function for recasting objects as array of pointers of objects. 2017-10-05 00:10:02 +01:00
Mike Auty 88fa13bbdd Allow count to be specified as a parameter. 2017-10-04 22:21:29 +01:00
Mike Auty 71cfec18a6 Add commentary around a potential conflict of method with property. 2017-09-20 09:38:28 +01:00
Mike Auty 5261da780b Allow the size of array to be changed (may override an existing count member). 2017-09-18 23:23:23 +01:00
Mike Auty 255228ecb0 Convert to abc (post python-3.3). 2017-09-18 23:22:08 +01:00
Nick L. Petroni, Jr 5bb2aef9fc Created linux.proc.Maps plugin.
Added object extensions for the key structures. Also added
constants.linux, which will contain Linux-specific constants
that can't be extracted via dwarf.
2017-08-16 16:14:33 -04:00
Mike Auty c336a39695 Fix up the Char type (struct.unpack returns a bytes, not a string). 2017-08-10 20:44:21 +01:00
Mike Auty d32fc223e2 Fix up additional imports inconsistent with the coding style.
Note: also remove interfaces_configuration where ever possible
(this is not possible in the interfaces directory itself
because it would cause an import loop).
2017-08-09 22:32:44 +01:00
Mike Auty d79d428edc Ensure we use the native dictionary for more recent IFF versions (and correct issues with pointers and chars). 2017-06-23 15:44:58 +01:00
Mike Auty 5e15d522bd Remove automatic IDE-inserted attributions.
They weren't consistent and they show just remind me how slowly
I've been getting vol 3 written!  5:S

There's git commits to track all of that stuff if we need it.
2017-05-14 11:40:49 +01:00
Mike Auty d37732e9b6 Add in array_to_string helper function. 2017-04-21 00:01:12 +01:00
Mike Auty 6603e503c5 Rework enumeration access in symbol tables. 2017-02-04 14:46:46 +00:00