Merge "Make apex util detect if hashtree is present"
This commit is contained in:
@@ -340,6 +340,8 @@ def SignUncompressedApex(avbtool, apex_file, payload_key, container_key,
|
||||
zip_items = apex_fd.namelist()
|
||||
|
||||
payload_info = ParseApexPayloadInfo(avbtool, payload_file)
|
||||
if no_hashtree is None:
|
||||
no_hashtree = payload_info.get("Tree Size", 0) == 0
|
||||
SignApexPayload(
|
||||
avbtool,
|
||||
payload_file,
|
||||
@@ -503,6 +505,7 @@ def SignApex(avbtool, apex_data, payload_key, container_key, container_pw,
|
||||
raise ApexInfoError(
|
||||
'Failed to get type for {}:\n{}'.format(apex_file, e))
|
||||
|
||||
|
||||
def GetApexInfoFromTargetFiles(input_file, partition, compressed_only=True):
|
||||
"""
|
||||
Get information about system APEX stored in the input_file zip
|
||||
|
@@ -575,7 +575,7 @@ def ProcessTargetFiles(input_tf_zip, output_tf_zip, misc_info,
|
||||
key_passwords,
|
||||
apk_keys,
|
||||
codename_to_api_level_map,
|
||||
no_hashtree=True,
|
||||
no_hashtree=None, # Let apex_util determine if hash tree is needed
|
||||
signing_args=OPTIONS.avb_extra_args.get('apex'))
|
||||
common.ZipWrite(output_tf_zip, signed_apex, filename)
|
||||
|
||||
@@ -762,7 +762,8 @@ def ReplaceCerts(data):
|
||||
# it's only checking entries with global seinfo at the moment (i.e. ignoring
|
||||
# the ones with inner packages). (Bug: 69479366)
|
||||
root = ElementTree.fromstring(data)
|
||||
signatures = [signer.attrib['signature'] for signer in root.findall('signer')]
|
||||
signatures = [signer.attrib['signature']
|
||||
for signer in root.findall('signer')]
|
||||
assert len(signatures) == len(set(signatures)), \
|
||||
"Found duplicate entries after cert replacement: {}".format(data)
|
||||
|
||||
|
Reference in New Issue
Block a user