acquire 3.15.dev4__tar.gz → 3.15.dev5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {acquire-3.15.dev4/acquire.egg-info → acquire-3.15.dev5}/PKG-INFO +1 -1
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/acquire.py +2 -2
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/version.py +2 -2
- {acquire-3.15.dev4 → acquire-3.15.dev5/acquire.egg-info}/PKG-INFO +1 -1
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire.egg-info/SOURCES.txt +1 -0
- acquire-3.15.dev5/tests/test_gui.py +48 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/COPYRIGHT +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/LICENSE +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/MANIFEST.in +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/README.md +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/__init__.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/collector.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/crypt.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/dynamic/__init__.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/dynamic/windows/__init__.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/dynamic/windows/collect.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/dynamic/windows/exceptions.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/dynamic/windows/handles.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/dynamic/windows/named_objects.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/dynamic/windows/ntdll.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/dynamic/windows/types.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/esxi.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/gui/__init__.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/gui/base.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/gui/win32.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/hashes.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/log.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/outputs/__init__.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/outputs/base.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/outputs/dir.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/outputs/tar.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/outputs/zip.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/tools/__init__.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/tools/decrypter.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/uploaders/__init__.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/uploaders/minio.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/uploaders/plugin.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/uploaders/plugin_registry.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/utils.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire/volatilestream.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire.egg-info/dependency_links.txt +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire.egg-info/entry_points.txt +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire.egg-info/requires.txt +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/acquire.egg-info/top_level.txt +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/pyproject.toml +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/setup.cfg +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/__init__.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/conftest.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/docs/Makefile +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/docs/conf.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/docs/index.rst +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_acquire_command.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_acquire_modules.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_collector.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_decryptor_funcs.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_esxi_memory.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_file_sorting.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_minio_uploader.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_misc_users.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_outputs_dir.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_outputs_tar.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_plugin.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tests/test_utils.py +0 -0
- {acquire-3.15.dev4 → acquire-3.15.dev5}/tox.ini +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: acquire
|
|
3
|
-
Version: 3.15.
|
|
3
|
+
Version: 3.15.dev5
|
|
4
4
|
Summary: A tool to quickly gather forensic artifacts from disk images or a live system into a lightweight container
|
|
5
5
|
Author-email: Dissect Team <dissect@fox-it.com>
|
|
6
6
|
License: Affero General Public License v3
|
|
@@ -2167,7 +2167,7 @@ def acquire_children_and_targets(target: Target, args: argparse.Namespace) -> No
|
|
|
2167
2167
|
if (args.children and not args.skip_parent) or not args.children:
|
|
2168
2168
|
total_targets += 1
|
|
2169
2169
|
counter += 1
|
|
2170
|
-
acquire_gui.shard = (progress_limit
|
|
2170
|
+
acquire_gui.shard = int((progress_limit / total_targets) * counter)
|
|
2171
2171
|
try:
|
|
2172
2172
|
files.extend(acquire_target(target, args, args.start_time))
|
|
2173
2173
|
|
|
@@ -2180,7 +2180,7 @@ def acquire_children_and_targets(target: Target, args: argparse.Namespace) -> No
|
|
|
2180
2180
|
if args.children:
|
|
2181
2181
|
for child in target.list_children():
|
|
2182
2182
|
counter += 1
|
|
2183
|
-
acquire_gui.shard = (
|
|
2183
|
+
acquire_gui.shard = int((progress_limit / total_targets) * counter)
|
|
2184
2184
|
try:
|
|
2185
2185
|
child_target = load_child(target, child.path)
|
|
2186
2186
|
except Exception:
|
|
@@ -12,5 +12,5 @@ __version__: str
|
|
|
12
12
|
__version_tuple__: VERSION_TUPLE
|
|
13
13
|
version_tuple: VERSION_TUPLE
|
|
14
14
|
|
|
15
|
-
__version__ = version = '3.15.
|
|
16
|
-
__version_tuple__ = version_tuple = (3, 15, '
|
|
15
|
+
__version__ = version = '3.15.dev5'
|
|
16
|
+
__version_tuple__ = version_tuple = (3, 15, 'dev5')
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: acquire
|
|
3
|
-
Version: 3.15.
|
|
3
|
+
Version: 3.15.dev5
|
|
4
4
|
Summary: A tool to quickly gather forensic artifacts from disk images or a live system into a lightweight container
|
|
5
5
|
Author-email: Dissect Team <dissect@fox-it.com>
|
|
6
6
|
License: Affero General Public License v3
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
from argparse import Namespace
|
|
2
|
+
from unittest.mock import MagicMock, patch
|
|
3
|
+
|
|
4
|
+
import pytest
|
|
5
|
+
from dissect.target import Target
|
|
6
|
+
|
|
7
|
+
from acquire.acquire import acquire_children_and_targets
|
|
8
|
+
from acquire.gui import GUI
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@pytest.mark.parametrize(
|
|
12
|
+
"num_children, skip_parent, auto_upload, expected_shards",
|
|
13
|
+
[
|
|
14
|
+
(0, False, False, [90]), # 90 (default, leaves 10% for final 'step')
|
|
15
|
+
(0, False, True, [50]), # 50% till upload (upload progresses in plugin)
|
|
16
|
+
(1, False, False, [45, 90]), # two children to 90%
|
|
17
|
+
(1, True, False, [90]), # without parent, it's just one target - so 90%
|
|
18
|
+
(1, False, True, [25, 50]), # two children to 50%
|
|
19
|
+
(1, True, True, [50]), # one till upload (50%)
|
|
20
|
+
(2, False, False, [30, 60, 90]), # two children + parent till 90%
|
|
21
|
+
(2, False, True, [16, 33, 50]), # two children + parent till 50%
|
|
22
|
+
(50, False, True, list(range(0, 51))), # Should not be zero filled...
|
|
23
|
+
],
|
|
24
|
+
)
|
|
25
|
+
@patch("acquire.gui.base.Stub", spec=True)
|
|
26
|
+
@patch("acquire.acquire.acquire_target", create=True)
|
|
27
|
+
def test_gui(
|
|
28
|
+
mock_target: Target, gui: GUI, num_children: int, skip_parent: bool, auto_upload: bool, expected_shards: list[int]
|
|
29
|
+
):
|
|
30
|
+
def list_children() -> list[Target]:
|
|
31
|
+
yield from [mock_target] * num_children
|
|
32
|
+
|
|
33
|
+
mock_target.list_children = list_children
|
|
34
|
+
|
|
35
|
+
class Diagnostic_GUI(MagicMock):
|
|
36
|
+
@property
|
|
37
|
+
def shard(self) -> int:
|
|
38
|
+
return 0
|
|
39
|
+
|
|
40
|
+
@shard.setter
|
|
41
|
+
def shard(self, shard: int) -> None:
|
|
42
|
+
shards.append(shard)
|
|
43
|
+
|
|
44
|
+
GUI.__new__ = lambda x: Diagnostic_GUI()
|
|
45
|
+
shards = []
|
|
46
|
+
args = Namespace(child=False, auto_upload=auto_upload, children=True, skip_parent=skip_parent, start_time=0)
|
|
47
|
+
acquire_children_and_targets(mock_target, args)
|
|
48
|
+
assert shards == expected_shards
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|