aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2022-02-08 04:25:02 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2022-02-08 04:25:02 +0000
commitc438d9aaca2d1f816f21ad7cfbef42479ed4dece (patch)
treeba60fdb273f91fae81a133618b56439909d39770
parentf6cd3a1ddd3e9b587c9870c592e9e1bda1ebf12a (diff)
parent846f285d55d7b3c333c20a162f50c3a7e4cf3b8b (diff)
downloadbuild-c438d9aaca2d1f816f21ad7cfbef42479ed4dece.tar.gz
Merge "Update APK parser to be compatible with new signer output"
-rwxr-xr-xtools/releasetools/check_target_files_signatures.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/tools/releasetools/check_target_files_signatures.py b/tools/releasetools/check_target_files_signatures.py
index 0f56fb9056..d935607e43 100755
--- a/tools/releasetools/check_target_files_signatures.py
+++ b/tools/releasetools/check_target_files_signatures.py
@@ -237,9 +237,11 @@ class APK(object):
# Signer #1 certificate DN: ...
# Signer #1 certificate SHA-256 digest: ...
# Signer #1 certificate SHA-1 digest: ...
+ # Signer (minSdkVersion=24, maxSdkVersion=32) certificate SHA-256 digest: 56be132b780656fe2444cd34326eb5d7aac91d2096abf0fe673a99270622ec87
+ # Signer (minSdkVersion=24, maxSdkVersion=32) certificate SHA-1 digest: 19da94896ce4078c38ca695701f1dec741ec6d67
# ...
certs_info = {}
- certificate_regex = re.compile(r"(Signer #[0-9]+) (certificate .*):(.*)")
+ certificate_regex = re.compile(r"(Signer (?:#[0-9]+|\(.*\))) (certificate .*):(.*)")
for line in output.splitlines():
m = certificate_regex.match(line)
if not m:
@@ -342,8 +344,8 @@ class TargetFiles(object):
apk = APK(fullname, displayname)
self.apks[apk.filename] = apk
self.apks_by_basename[os.path.basename(apk.filename)] = apk
-
- self.max_pkg_len = max(self.max_pkg_len, len(apk.package))
+ if apk.package:
+ self.max_pkg_len = max(self.max_pkg_len, len(apk.package))
self.max_fn_len = max(self.max_fn_len, len(apk.filename))
def CheckSharedUids(self):
@@ -396,7 +398,8 @@ class TargetFiles(object):
by_digest = {}
for apk in self.apks.values():
for digest in apk.cert_digests:
- by_digest.setdefault(digest, []).append((apk.package, apk))
+ if apk.package:
+ by_digest.setdefault(digest, []).append((apk.package, apk))
order = [(-len(v), k) for (k, v) in by_digest.items()]
order.sort()