diff options
author | Julia Reynolds <juliacr@google.com> | 2016-06-28 15:16:21 -0400 |
---|---|---|
committer | gitbuildkicker <android-build@google.com> | 2016-08-16 15:52:26 -0700 |
commit | 135ea8b3263a0dd58cd5a83c33fad6f2f6c5b4f6 (patch) | |
tree | 2bb9395147fb75fe3de87293ab2283243936e4a3 /services | |
parent | 2e40f264cfc18d2ad7e5facad077f5498473fb89 (diff) | |
download | frameworks_base-135ea8b3263a0dd58cd5a83c33fad6f2f6c5b4f6.zip frameworks_base-135ea8b3263a0dd58cd5a83c33fad6f2f6c5b4f6.tar.gz frameworks_base-135ea8b3263a0dd58cd5a83c33fad6f2f6c5b4f6.tar.bz2 |
Check caller's uid before allowing notification policy access.
Bug: 29421441
Change-Id: I7460268595e932d54660b02007bcd68b95fe8aec
Diffstat (limited to 'services')
-rw-r--r-- | services/core/java/com/android/server/notification/NotificationManagerService.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/notification/NotificationManagerService.java b/services/core/java/com/android/server/notification/NotificationManagerService.java index 4351798..b922d26 100644 --- a/services/core/java/com/android/server/notification/NotificationManagerService.java +++ b/services/core/java/com/android/server/notification/NotificationManagerService.java @@ -1642,6 +1642,7 @@ public class NotificationManagerService extends SystemService { } private void enforcePolicyAccess(String pkg, String method) { + checkCallerIsSameApp(pkg); if (!checkPolicyAccess(pkg)) { Slog.w(TAG, "Notification policy access denied calling " + method); throw new SecurityException("Notification policy access denied"); @@ -3130,6 +3131,10 @@ public class NotificationManagerService extends SystemService { if (isCallerSystem()) { return; } + checkCallerIsSameApp(pkg); + } + + private static void checkCallerIsSameApp(String pkg) { final int uid = Binder.getCallingUid(); try { ApplicationInfo ai = AppGlobals.getPackageManager().getApplicationInfo( |