-
Notifications
You must be signed in to change notification settings - Fork 80
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Some directories are not reported #554
Comments
The directory not being reported/processed as a If it is really needed a new report type on chunks ( |
Related: #326. I am not sure we need to do anything with it, though. |
Option could be to move the carved files out of the extraction tree structure and store them separately. Also in most cases we are deleting the carves, also carves are easily reproducable. This way we can use the followning extraction tree structure:
|
This issue is causing problems with people wanting to do nice things with the unblob API from Python. See #878 |
This was blocking my ability to map between extraction directories and the blobs they were derived from with the API so I took a stab at it in #891. I didn't figure out how to add a new task/subtask for carving, instead I just added a new report type that logs the source and destination of each carve. With the example {
"carved_from": "/tmp/unblob/fruits.lvl1.lzh",
"carved_to": "/tmp/unblob/fruits.lvl1.lzh_extract/96-146.lzh",
"start_offset": 96,
"end_offset": 146,
"handler_name": "lzh",
"__typename__": "CarveReport"
},
{
"carved_from": "/tmp/unblob/fruits.lvl1.lzh",
"carved_to": "/tmp/unblob/fruits.lvl1.lzh_extract/47-96.lzh",
"start_offset": 47,
"end_offset": 96,
"handler_name": "lzh",
"__typename__": "CarveReport"
},
{
"carved_from": "/tmp/unblob/fruits.lvl1.lzh",
"carved_to": "/tmp/unblob/fruits.lvl1.lzh_extract/0-47.lzh",
"start_offset": 0,
"end_offset": 47,
"handler_name": "lzh",
"__typename__": "CarveReport"
}, |
When extracting chunks, there is a logic for handling the whole chunks differently, here. This results that in some cases some directories are not reported.
Reproduce this with this test file: test.zip. This is actually from the integration test suit, but I had to zip it for github to allow me attach it.
If I run this file with unblob and check the report, I get the following item:
A part of the generated report json
This means, when unblob handles
/tmp/fruits.lvl1.lzh
, it will create 3 subtasks:/tmp/unblob/fruits.lvl1.lzh_extract/96-146.lzh_extract
/tmp/unblob/fruits.lvl1.lzh_extract/47-96.lzh_extract
/tmp/unblob/fruits.lvl1.lzh_extract/0-47.lzh_extract
And will continue to run for those (sub)tasks. However a task for the
/tmp/unblob/fruits.lvl1.lzh_extract
directory is never created, so that directory is just there in the file system without actually being in the generated report.The text was updated successfully, but these errors were encountered: