Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bef81fb8 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "SourceStampVerification Return more specific error code when...

Merge "SourceStampVerification Return more specific error code when verification fails" am: 03724475 am: 0c5d49cd am: e0874198

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2634449



Change-Id: Ibf9b4878569d5bfd88607497f75dc14357026e9f
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 9deecc01 e0874198
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -142,16 +142,21 @@ public abstract class SourceStampVerifier {

    private static SourceStampVerificationResult verify(
            RandomAccessFile apk, byte[] sourceStampCertificateDigest, byte[] manifestBytes) {
        SignatureInfo signatureInfo;
        try {
            SignatureInfo signatureInfo =
            signatureInfo =
                    ApkSigningBlockUtils.findSignature(apk, SOURCE_STAMP_BLOCK_ID);
        } catch (IOException | SignatureNotFoundException | RuntimeException e) {
            return SourceStampVerificationResult.notPresent();
        }
        try {
            Map<Integer, Map<Integer, byte[]>> signatureSchemeApkContentDigests =
                    getSignatureSchemeApkContentDigests(apk, manifestBytes);
            return verify(
                    signatureInfo,
                    getSignatureSchemeDigests(signatureSchemeApkContentDigests),
                    sourceStampCertificateDigest);
        } catch (IOException | SignatureNotFoundException | RuntimeException e) {
        } catch (IOException | RuntimeException e) {
            return SourceStampVerificationResult.notVerified();
        }
    }
+1 −1
Original line number Diff line number Diff line
@@ -100,7 +100,7 @@ public class SourceStampVerifierTest {
        SourceStampVerificationResult result =
                SourceStampVerifier.verify(mPrimaryApk.getAbsolutePath());

        assertTrue(result.isPresent());
        assertFalse(result.isPresent());
        assertFalse(result.isVerified());
        assertNull(result.getCertificate());
    }