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

Commit 4bb1ff08 authored by Pechetty Sravani (xWF)'s avatar Pechetty Sravani (xWF) Committed by Automerger Merge Worker
Browse files

Merge "Revert "Stop logging the AppIntegrityManager related logs (namely,...

Merge "Revert "Stop logging the AppIntegrityManager related logs (namely, INTEGRITY_CHECK_RESULT_REPORTED and INTEGRITY_RULES_PUSHED) in preparation of the code clean-up of this deprecated component."" into main am: d45ece46

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



Change-Id: I71d06cba010b00b94585d1c6fea3c0f71d859603
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 08dca394 d45ece46
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -214,6 +214,12 @@ public class AppIntegrityManagerServiceImpl extends IAppIntegrityManager.Stub {
                                        version, ruleProvider));
                    }

                    FrameworkStatsLog.write(
                            FrameworkStatsLog.INTEGRITY_RULES_PUSHED,
                            success,
                            ruleProvider,
                            version);

                    Intent intent = new Intent();
                    intent.putExtra(EXTRA_STATUS, success ? STATUS_SUCCESS : STATUS_FAILURE);
                    try {
@@ -340,6 +346,15 @@ public class AppIntegrityManagerServiceImpl extends IAppIntegrityManager.Stub {
                                packageName, result.getEffect(), result.getMatchedRules()));
            }

            FrameworkStatsLog.write(
                    FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED,
                    packageName,
                    appCertificates.toString(),
                    appInstallMetadata.getVersionCode(),
                    installerPackageName,
                    result.getLoggingResponse(),
                    result.isCausedByAppCertRule(),
                    result.isCausedByInstallerRule());
            mPackageManagerInternal.setIntegrityVerificationResult(
                    verificationId,
                    result.getEffect() == IntegrityCheckResult.Effect.ALLOW
+15 −0
Original line number Diff line number Diff line
@@ -82,6 +82,21 @@ public final class IntegrityCheckResult {
        return new IntegrityCheckResult(Effect.DENY, ruleList);
    }

    /**
     * Returns the in value of the integrity check result for logging purposes.
     */
    public int getLoggingResponse() {
        if (getEffect() == Effect.DENY) {
            return FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__REJECTED;
        } else if (getEffect() == Effect.ALLOW && getMatchedRules().isEmpty()) {
            return FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__ALLOWED;
        } else if (getEffect() == Effect.ALLOW && !getMatchedRules().isEmpty()) {
            return FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__FORCE_ALLOWED;
        } else {
            throw new IllegalStateException("IntegrityCheckResult is not valid.");
        }
    }

    /** Returns true when the {@code mEffect} is caused by an app certificate mismatch. */
    public boolean isCausedByAppCertRule() {
        return mRuleList.stream().anyMatch(rule -> rule.getFormula().isAppCertificateFormula());
+7 −0
Original line number Diff line number Diff line
@@ -40,6 +40,8 @@ public class IntegrityCheckResultTest {

        assertThat(allowResult.getEffect()).isEqualTo(IntegrityCheckResult.Effect.ALLOW);
        assertThat(allowResult.getMatchedRules()).isEmpty();
        assertThat(allowResult.getLoggingResponse())
                .isEqualTo(FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__ALLOWED);
    }

    @Test
@@ -56,6 +58,9 @@ public class IntegrityCheckResultTest {

        assertThat(allowResult.getEffect()).isEqualTo(IntegrityCheckResult.Effect.ALLOW);
        assertThat(allowResult.getMatchedRules()).containsExactly(forceAllowRule);
        assertThat(allowResult.getLoggingResponse())
                .isEqualTo(
                        FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__FORCE_ALLOWED);
    }

    @Test
@@ -72,6 +77,8 @@ public class IntegrityCheckResultTest {

        assertThat(denyResult.getEffect()).isEqualTo(IntegrityCheckResult.Effect.DENY);
        assertThat(denyResult.getMatchedRules()).containsExactly(failedRule);
        assertThat(denyResult.getLoggingResponse())
                .isEqualTo(FrameworkStatsLog.INTEGRITY_CHECK_RESULT_REPORTED__RESPONSE__REJECTED);
    }

    @Test