Loading services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java +14 −7 Original line number Diff line number Diff line Loading @@ -192,6 +192,7 @@ class MediaRouter2ServiceImpl { // Start of methods that implement MediaRouter2 operations. @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) @NonNull public boolean verifyPackageExists(@NonNull String clientPackageName) { final int pid = Binder.getCallingPid(); Loading @@ -199,11 +200,7 @@ class MediaRouter2ServiceImpl { final long token = Binder.clearCallingIdentity(); try { mContext.enforcePermission( Manifest.permission.MEDIA_CONTENT_CONTROL, pid, uid, "Must hold MEDIA_CONTENT_CONTROL permission."); enforcePrivilegedRoutingPermissions(uid, pid); PackageManager pm = mContext.getPackageManager(); pm.getPackageInfo(clientPackageName, PackageManager.PackageInfoFlags.of(0)); return true; Loading Loading @@ -482,6 +479,7 @@ class MediaRouter2ServiceImpl { } } @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) public void registerManager(@NonNull IMediaRouter2Manager manager, @NonNull String callerPackageName) { Objects.requireNonNull(manager, "manager must not be null"); Loading Loading @@ -729,6 +727,15 @@ class MediaRouter2ServiceImpl { return hasBluetoothRoutingPermission; } @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) private void enforcePrivilegedRoutingPermissions(int callerUid, int callerPid) { mContext.enforcePermission( Manifest.permission.MEDIA_CONTENT_CONTROL, callerPid, callerUid, "Must hold MEDIA_CONTENT_CONTROL permission."); } // End of methods that implements operations for both MediaRouter2 and MediaRouter2Manager. public void dump(@NonNull PrintWriter pw, @NonNull String prefix) { Loading Loading @@ -1164,6 +1171,7 @@ class MediaRouter2ServiceImpl { return sessionInfos; } @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) @GuardedBy("mLock") private void registerManagerLocked( @NonNull IMediaRouter2Manager manager, Loading @@ -1187,8 +1195,7 @@ class MediaRouter2ServiceImpl { + " callerUserId: %d", callerUid, callerPid, callerPackageName, callerUserId)); mContext.enforcePermission(Manifest.permission.MEDIA_CONTENT_CONTROL, callerPid, callerUid, "Must hold MEDIA_CONTENT_CONTROL permission."); enforcePrivilegedRoutingPermissions(callerUid, callerPid); UserRecord userRecord = getOrCreateUserRecordLocked(callerUserId); managerRecord = new ManagerRecord( Loading services/core/java/com/android/server/media/MediaRouterService.java +2 −0 Original line number Diff line number Diff line Loading @@ -409,6 +409,7 @@ public final class MediaRouterService extends IMediaRouterService.Stub } // Binder call @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) @Override public boolean verifyPackageExists(String clientPackageName) { return mService2.verifyPackageExists(clientPackageName); Loading Loading @@ -536,6 +537,7 @@ public final class MediaRouterService extends IMediaRouterService.Stub } // Binder call @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) @Override public void registerManager(IMediaRouter2Manager manager, String callerPackageName) { final int uid = Binder.getCallingUid(); Loading Loading
services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java +14 −7 Original line number Diff line number Diff line Loading @@ -192,6 +192,7 @@ class MediaRouter2ServiceImpl { // Start of methods that implement MediaRouter2 operations. @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) @NonNull public boolean verifyPackageExists(@NonNull String clientPackageName) { final int pid = Binder.getCallingPid(); Loading @@ -199,11 +200,7 @@ class MediaRouter2ServiceImpl { final long token = Binder.clearCallingIdentity(); try { mContext.enforcePermission( Manifest.permission.MEDIA_CONTENT_CONTROL, pid, uid, "Must hold MEDIA_CONTENT_CONTROL permission."); enforcePrivilegedRoutingPermissions(uid, pid); PackageManager pm = mContext.getPackageManager(); pm.getPackageInfo(clientPackageName, PackageManager.PackageInfoFlags.of(0)); return true; Loading Loading @@ -482,6 +479,7 @@ class MediaRouter2ServiceImpl { } } @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) public void registerManager(@NonNull IMediaRouter2Manager manager, @NonNull String callerPackageName) { Objects.requireNonNull(manager, "manager must not be null"); Loading Loading @@ -729,6 +727,15 @@ class MediaRouter2ServiceImpl { return hasBluetoothRoutingPermission; } @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) private void enforcePrivilegedRoutingPermissions(int callerUid, int callerPid) { mContext.enforcePermission( Manifest.permission.MEDIA_CONTENT_CONTROL, callerPid, callerUid, "Must hold MEDIA_CONTENT_CONTROL permission."); } // End of methods that implements operations for both MediaRouter2 and MediaRouter2Manager. public void dump(@NonNull PrintWriter pw, @NonNull String prefix) { Loading Loading @@ -1164,6 +1171,7 @@ class MediaRouter2ServiceImpl { return sessionInfos; } @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) @GuardedBy("mLock") private void registerManagerLocked( @NonNull IMediaRouter2Manager manager, Loading @@ -1187,8 +1195,7 @@ class MediaRouter2ServiceImpl { + " callerUserId: %d", callerUid, callerPid, callerPackageName, callerUserId)); mContext.enforcePermission(Manifest.permission.MEDIA_CONTENT_CONTROL, callerPid, callerUid, "Must hold MEDIA_CONTENT_CONTROL permission."); enforcePrivilegedRoutingPermissions(callerUid, callerPid); UserRecord userRecord = getOrCreateUserRecordLocked(callerUserId); managerRecord = new ManagerRecord( Loading
services/core/java/com/android/server/media/MediaRouterService.java +2 −0 Original line number Diff line number Diff line Loading @@ -409,6 +409,7 @@ public final class MediaRouterService extends IMediaRouterService.Stub } // Binder call @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) @Override public boolean verifyPackageExists(String clientPackageName) { return mService2.verifyPackageExists(clientPackageName); Loading Loading @@ -536,6 +537,7 @@ public final class MediaRouterService extends IMediaRouterService.Stub } // Binder call @RequiresPermission(Manifest.permission.MEDIA_CONTENT_CONTROL) @Override public void registerManager(IMediaRouter2Manager manager, String callerPackageName) { final int uid = Binder.getCallingUid(); Loading