From c56106a13edde7404275bcf97ae143f600857d7c Mon Sep 17 00:00:00 2001 From: Fyodor Kupolov Date: Fri, 6 Oct 2017 17:02:21 -0700 Subject: [PATCH] Crash if not all privileged permissions are whitelisted Test: reboot device - no crashes Test: Ran privapp_permissions.py for fugu/marlin/taimen Bug: 64693550 Change-Id: I9522ccaa75858b9a3d153c95c529eff70cd13994 --- data/etc/privapp-permissions-platform.xml | 3 +++ .../java/com/android/server/pm/PackageManagerService.java | 3 +-- services/java/com/android/server/SystemServer.java | 6 +----- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/data/etc/privapp-permissions-platform.xml b/data/etc/privapp-permissions-platform.xml index 6a3a973929551..902b872e9c741 100644 --- a/data/etc/privapp-permissions-platform.xml +++ b/data/etc/privapp-permissions-platform.xml @@ -253,12 +253,14 @@ applications that come with the platform + + @@ -282,6 +284,7 @@ applications that come with the platform + diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 7d1a6470266f5..2d8eba2e3b881 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -21289,9 +21289,8 @@ Slog.v(TAG, ":: stepped forward, applying functor at tag " + parser.getName()); reconcileApps(StorageManager.UUID_PRIVATE_INTERNAL); if (mPrivappPermissionsViolations != null) { - Slog.wtf(TAG,"Signature|privileged permissions not in " + throw new IllegalStateException("Signature|privileged permissions not in " + "privapp-permissions whitelist: " + mPrivappPermissionsViolations); - mPrivappPermissionsViolations = null; } } diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java index 92cbd3d5537e8..ff45070e599cd 100644 --- a/services/java/com/android/server/SystemServer.java +++ b/services/java/com/android/server/SystemServer.java @@ -1640,11 +1640,7 @@ public final class SystemServer { traceEnd(); traceBeginAndSlog("MakePackageManagerServiceReady"); - try { - mPackageManagerService.systemReady(); - } catch (Throwable e) { - reportWtf("making Package Manager Service ready", e); - } + mPackageManagerService.systemReady(); traceEnd(); traceBeginAndSlog("MakeDisplayManagerServiceReady");