Loading tools/releasetools/sign_target_files_apks.py +2 −6 Original line number Diff line number Diff line Loading @@ -111,6 +111,7 @@ import base64 import copy import errno import gzip import io import itertools import logging import os Loading Loading @@ -746,12 +747,7 @@ def WriteOtacerts(output_zip, filename, keys): filename: The archive name in the output zip. keys: A list of public keys to use during OTA package verification. """ try: from StringIO import StringIO except ImportError: from io import StringIO temp_file = StringIO() temp_file = io.BytesIO() certs_zip = zipfile.ZipFile(temp_file, "w") for k in keys: common.ZipWrite(certs_zip, k) Loading tools/releasetools/test_sign_target_files_apks.py +18 −1 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ # import base64 import io import os.path import zipfile Loading @@ -22,7 +23,7 @@ import common import test_utils from sign_target_files_apks import ( CheckApkAndApexKeysAvailable, EditTags, GetApkFileInfo, ReadApexKeysInfo, ReplaceCerts, ReplaceVerityKeyId, RewriteProps) ReplaceCerts, ReplaceVerityKeyId, RewriteProps, WriteOtacerts) class SignTargetFilesApksTest(test_utils.ReleaseToolsTestCase): Loading Loading @@ -236,6 +237,22 @@ name="apex.apexd_test_different_app.apex" public_key="system/apex/apexd/apexd_te } self.assertEqual(output_xml, ReplaceCerts(input_xml)) def test_WriteOtacerts(self): certs = [ os.path.join(self.testdata_dir, 'platform.x509.pem'), os.path.join(self.testdata_dir, 'media.x509.pem'), os.path.join(self.testdata_dir, 'testkey.x509.pem'), ] entry_name = 'SYSTEM/etc/security/otacerts.zip' output_file = common.MakeTempFile(suffix='.zip') with zipfile.ZipFile(output_file, 'w') as output_zip: WriteOtacerts(output_zip, entry_name, certs) with zipfile.ZipFile(output_file) as input_zip: self.assertIn(entry_name, input_zip.namelist()) otacerts_file = io.BytesIO(input_zip.read(entry_name)) with zipfile.ZipFile(otacerts_file) as otacerts_zip: self.assertEqual(3, len(otacerts_zip.namelist())) def test_CheckApkAndApexKeysAvailable(self): input_file = common.MakeTempFile(suffix='.zip') with zipfile.ZipFile(input_file, 'w') as input_zip: Loading Loading
tools/releasetools/sign_target_files_apks.py +2 −6 Original line number Diff line number Diff line Loading @@ -111,6 +111,7 @@ import base64 import copy import errno import gzip import io import itertools import logging import os Loading Loading @@ -746,12 +747,7 @@ def WriteOtacerts(output_zip, filename, keys): filename: The archive name in the output zip. keys: A list of public keys to use during OTA package verification. """ try: from StringIO import StringIO except ImportError: from io import StringIO temp_file = StringIO() temp_file = io.BytesIO() certs_zip = zipfile.ZipFile(temp_file, "w") for k in keys: common.ZipWrite(certs_zip, k) Loading
tools/releasetools/test_sign_target_files_apks.py +18 −1 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ # import base64 import io import os.path import zipfile Loading @@ -22,7 +23,7 @@ import common import test_utils from sign_target_files_apks import ( CheckApkAndApexKeysAvailable, EditTags, GetApkFileInfo, ReadApexKeysInfo, ReplaceCerts, ReplaceVerityKeyId, RewriteProps) ReplaceCerts, ReplaceVerityKeyId, RewriteProps, WriteOtacerts) class SignTargetFilesApksTest(test_utils.ReleaseToolsTestCase): Loading Loading @@ -236,6 +237,22 @@ name="apex.apexd_test_different_app.apex" public_key="system/apex/apexd/apexd_te } self.assertEqual(output_xml, ReplaceCerts(input_xml)) def test_WriteOtacerts(self): certs = [ os.path.join(self.testdata_dir, 'platform.x509.pem'), os.path.join(self.testdata_dir, 'media.x509.pem'), os.path.join(self.testdata_dir, 'testkey.x509.pem'), ] entry_name = 'SYSTEM/etc/security/otacerts.zip' output_file = common.MakeTempFile(suffix='.zip') with zipfile.ZipFile(output_file, 'w') as output_zip: WriteOtacerts(output_zip, entry_name, certs) with zipfile.ZipFile(output_file) as input_zip: self.assertIn(entry_name, input_zip.namelist()) otacerts_file = io.BytesIO(input_zip.read(entry_name)) with zipfile.ZipFile(otacerts_file) as otacerts_zip: self.assertEqual(3, len(otacerts_zip.namelist())) def test_CheckApkAndApexKeysAvailable(self): input_file = common.MakeTempFile(suffix='.zip') with zipfile.ZipFile(input_file, 'w') as input_zip: Loading