diff options
author | Kelvin Zhang <zhangkelvin@google.com> | 2020-08-13 14:55:58 -0400 |
---|---|---|
committer | Kelvin Zhang <zhangkelvin@google.com> | 2020-08-19 21:46:05 +0000 |
commit | 9e7a6db36721dc14a17da32394e8c0e5b234e159 (patch) | |
tree | a06ae775338a1aa5d07d95ae3c77be2cef14df55 /scripts/update_payload/payload.py | |
parent | 8d6df9ac7a70f4b07ebb86f50fb3548b693acad5 (diff) |
Update payload.py to work with OTA packages directly
Test: python3 payload_info.py some_ota.zip
Change-Id: Id688e87d4712f2f750320eb0cd86c6a2cc263313
Diffstat (limited to 'scripts/update_payload/payload.py')
-rw-r--r-- | scripts/update_payload/payload.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/scripts/update_payload/payload.py b/scripts/update_payload/payload.py index ea5ed308..78b8e2ca 100644 --- a/scripts/update_payload/payload.py +++ b/scripts/update_payload/payload.py @@ -20,7 +20,9 @@ from __future__ import absolute_import from __future__ import print_function import hashlib +import io import struct +import zipfile from update_payload import applier from update_payload import checker @@ -119,6 +121,10 @@ class Payload(object): payload_file: update payload file object open for reading payload_file_offset: the offset of the actual payload """ + if zipfile.is_zipfile(payload_file): + with zipfile.ZipFile(payload_file) as zfp: + with zfp.open("payload.bin") as payload_fp: + payload_file = io.BytesIO(payload_fp.read()) self.payload_file = payload_file self.payload_file_offset = payload_file_offset self.manifest_hasher = None |