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

Commit fd9d67ef authored by Achim Thesmann's avatar Achim Thesmann Committed by Android (Google) Code Review
Browse files

Merge "Always allow BAL for system." into udc-dev

parents e727bdee 3ef3a815
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@ import android.os.Bundle;
import android.os.IBinder;
import android.os.PowerWhitelistManager;
import android.os.PowerWhitelistManager.ReasonCode;
import android.os.Process;
import android.os.RemoteCallbackList;
import android.os.RemoteException;
import android.os.TransactionTooLargeException;
@@ -382,6 +383,14 @@ public final class PendingIntentRecord extends IIntentSender.Stub {
            })
    public static BackgroundStartPrivileges getDefaultBackgroundStartPrivileges(
            int callingUid) {
        if (UserHandle.getAppId(callingUid) == Process.SYSTEM_UID) {
            // We temporarily allow BAL for system processes, while we verify that all valid use
            // cases are opted in explicitly to grant their BAL permission.
            // Background: In many cases devices are running additional apps that share UID with
            // the system. If one of these apps targets a lower SDK the change is not active, but
            // as soon as that app is upgraded (or removed) BAL would be blocked. (b/283138430)
            return BackgroundStartPrivileges.ALLOW_BAL;
        }
        boolean isChangeEnabledForApp = CompatChanges.isChangeEnabled(
                DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_SENDER, callingUid);
        if (isChangeEnabledForApp) {