Mike Auty
0c43beb42d
Core: Apply yapf across all files again.
2020-05-05 22:14:33 +01:00
Mike Auty
77be83edc4
Layers: Change mapping signature to return domain length
2020-03-04 20:29:42 +00:00
Mike Auty
373442ac24
pdbscan: Fix up permission error creating directories
2019-11-04 10:57:30 +00:00
Mike Auty
e0b9d72c84
Update the license URL and LICENSE.txt
2019-09-25 21:44:05 +01:00
Mike Auty
72567e1c50
Yapf-0.28.0 rerun across the whole codebase.
2019-09-21 21:08:23 +01:00
Mike Auty
dad88692b8
Minor improvements for pyinstaller packages.
2019-09-21 21:06:05 +01:00
Mike Auty
e922cef316
Improve docstrings for all plugins, and reformat all docstrings.
2019-09-07 22:59:54 +01:00
Mike Auty
9cde94bceb
Change the license blurb on all files.
2019-08-27 23:11:00 +01:00
Mike Auty
f0a13c902e
Make changes based on the view (mostly name clarification).
2019-07-30 22:14:19 +01:00
Mike Auty
398c583432
Ensure failed downloads are reported.
2019-07-30 22:14:19 +01:00
Mike Auty
6fc295410f
Support progress callbacks and improve pdb downloading.
2019-07-30 22:14:19 +01:00
Mike Auty
3bb113b0a7
Improve documentation and integration.
2019-07-30 22:14:19 +01:00
Mike Auty
272224a1b0
Refactor all references to Context.memory to Context.layers.
2019-07-07 17:42:51 +01:00
Mike Auty
4cfde031f6
Additional typing fixes.
2019-05-11 22:57:06 +01:00
Mike Auty
a7160dd6b6
Move the PDB downloading code and test for file writability.
2019-04-27 21:06:25 +01:00
Mike Auty
7c16c403d5
Ensure we delete the temorary file even if things go wrong.
2019-04-23 22:43:16 +01:00
Mike Auty
9350f7b88a
Don't forget to cleanup.
2019-04-23 00:32:29 +01:00
Mike Auty
ac282d01fb
Add in initial support at automatic downloading.
2019-04-23 00:16:19 +01:00
Mike Auty
4e8c8a7232
Fix issues with SymbolRequirement refactoring.
2019-02-11 22:30:22 +00:00
Mike Auty
f898dca296
Refactor SymbolRequirement to SymbolTableRequirement for clarity.
2019-02-06 21:26:32 +00:00
Mike Auty
c64ed6a8dd
Remove validity checking in favour of static-type checking.
...
This removes the assertions that checked plugin devs didn't do anything
overly bad in favour of using mypy to ensure appropriate type-checking.
It also moves the ProgressCallback typing information to constants in
order to avoid circular imports (since constants doesn't import
anything).
2019-01-20 02:35:49 +00:00
Mike Auty
b13fcb186c
Improve typing issues.
2019-01-03 01:13:53 +00:00
Mike Auty
19f908b075
Rejig pdbscan to find potential offsets then check them.
...
Originally we found physical offsets for pdbs that matched,
then found potential offsets and tested them against each other.
Now, we find the potential offsets and then look for pdbs at that offset
(technically within a 4Mb block after the start). The scanning is quick
(probably quicker than scanning the whole physical space) and should
catch most pdbs unless they're splayed out in virtual memory.
2019-01-01 01:14:34 +00:00
Mike Auty
fdc6efc4ad
Add in the LICENSE and the README.
2018-12-19 23:55:03 +00:00
Mike Auty
e65a00894a
Minor style tweaks and mass changes across the codebase because of it.
2018-12-17 12:46:14 +00:00
Mike Auty
b61ac3bd47
Many more typing fixes.
2018-12-17 01:17:06 +00:00
Mike Auty
19572b6e1e
Reformat all python files using yapf with custom volatility style.
2018-12-16 16:50:17 +00:00
Mike Auty
9824538bd9
Numerous pycharm warnings resolved
...
This includes:
* Better ways of checking empty lists
* Not shadowing builtin functions like filter
* Preventing invalid slash warnings by marking strings as regexps
* Removing unnecessary brackets
* Lowercase variable names
* Adding/updating parameters in docstrings
* Removing unused code (lines not chunks)
* Change in not a member tests
* Changing some methods to static
* Shorting range membership checks
* Missing parameters
* Make some exception handlers more specific
* Don't define a lambda to a variable
* A few more instance checks to help type checkers
2018-12-16 13:21:06 +00:00
Mike Auty
29d41470a4
Mass reformat of typing imports
...
Relented on the strict import of direct objects/classes for the typing
module only. Typing module components can be directly imported because
it makes the code really painful to read and write otherwise.
This is still in-line with the python style guide adopted from Google at
http://google.github.io/styleguide/pyguide.html section 2.2.
2018-12-16 13:04:22 +00:00
Mike Auty
341b9b8f9e
Add in initial changes for scanner sections.
2018-12-07 01:47:16 +00:00
Mike Auty
001d53e768
Rework some code to help with typing.
2018-11-01 11:17:15 +00:00
Mike Auty
e3e1c4e00b
Initial commit of pyinstaller spec. Some changes to path handling to help.
2018-10-30 23:56:34 +00:00
Mike Auty
f76aa66805
Reduce the risk of scanning the entire virtual address space, given we've already found potential kernels.
2018-10-26 22:39:36 +01:00
Mike Auty
e9bad27793
Add in kdbg_offset method for pdbscan, and make the module_offset the third choice.
2018-10-26 22:28:09 +01:00
Mike Auty
68a4bbf26c
Modularize pdb finding code.
2018-10-26 00:47:01 +01:00
Mike Auty
d799d4edd8
Add additional typing information.
2018-10-11 16:41:59 +01:00
Mike Auty
de3bfad135
Replace 'raise StopIteration' with a blank 'return', since changes in python-3.7 change StopIeration to a RuntimeError.
2018-09-28 12:44:19 +01:00
Mike Auty
00a118a06a
Reduce return results from find_requirements.
2018-09-23 22:24:44 +01:00
Mike Auty
190ffaf28b
Refactor where certain types of requirement live (given they're more concrete than interface).
2018-09-20 16:14:57 +01:00
Mike Auty
5791cfaab7
Stop overriding the builtin filter method, and ensure suitable parameter names.
2018-08-30 11:41:19 +01:00
Mike Auty
b1d46f843b
Convert documentation to napoleon/Google format docstrings.
2018-08-05 15:52:12 +01:00
Mike Auty
eb08fb9e96
Convert the pdb scanner to use the kernel module names constants.
2018-08-04 12:34:18 +01:00
Mike Auty
113c23a66d
Last of the typing fix-ups.
2018-06-04 23:55:38 +01:00
Mike Auty
a07691b04f
Ensure scanners don't return duplicates in the overlap.
2018-05-13 20:55:54 +01:00
Mike Auty
623180ddbd
Make many typing fixes, based on mypy-0.590.
2018-04-22 20:45:59 +01:00
Mike Auty
f3b6b5311f
Fix up a couple extra typing issues, improving code quality.
2018-02-10 22:51:56 +00:00
Mike Auty
970cfc3cd8
Fix up pdbscan to avoid running if not needed.
2018-02-10 22:44:44 +00:00
Mike Auty
152dc9a210
Error check for when we can't find the file_symbol_url.
2018-02-07 19:56:02 +00:00
Mike Auty
f40fae197d
Convert to python3.5 syntax (no local type-annotations).
2017-12-13 20:48:52 +00:00
Mike Auty
2cc456e847
Finish off the automagic directory type annotations.
2017-12-13 20:48:52 +00:00