armijnhemel / binaryanalysis-ng

Binary Analysis Next Generation (BANG)
GNU Affero General Public License v3.0
461 stars 66 forks source link

android_sparse_data: not working well with multiple threads #337

Closed armijnhemel closed 1 year ago

armijnhemel commented 1 year ago

There is a race condition that affects the android_sparse_data unpacker: successful unpacking of this format depends on the presence of other files (such as .transferlist). Since files are yielded by the other unpackers it could happen that the main file has already been yielded and in the scan queue, but that the transferlist file has not been yielded yet or is empty. This does not happen when running with a single thread.