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

Commit ecb003c3 authored by Jonathan Klee's avatar Jonathan Klee Committed by Alexander Grund
Browse files

Allow spoofing signingInfo for microG Companion/Services



- Spoof PackageInfo signingInfo + signatures so that
  G suite apps do not complain anymore.

Change-Id: I86f182c9e1d18b0e997803842577a90ef740cfd1
Signed-off-by: default avataralthafvly <althafvly@gmail.com>
parent 216a82f8
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -4529,6 +4529,18 @@ public class PackageManagerService extends IPackageManager.Stub
            generateFakeSignature(p).ifPresent(fakeSignature -> {
                packageInfo.signatures = new Signature[]{fakeSignature};
                try {
                    packageInfo.signingInfo = new SigningInfo(
                            new SigningDetails(
                                    packageInfo.signatures,
                                    SigningDetails.SignatureSchemeVersion.SIGNING_BLOCK_V3,
                                    PackageParser.toSigningKeys(packageInfo.signatures),
                                    null
                            )
                    );
                } catch (CertificateException e) {
                    Slog.e(TAG, "Caught an exception when creating signing keys: ", e);
                }
            });
            return packageInfo;