diff options
author | Jeff Davidson <jpd@google.com> | 2019-05-23 13:20:17 -0700 |
---|---|---|
committer | Jeff Davidson <jpd@google.com> | 2019-05-23 13:22:46 -0700 |
commit | 36f482213f87a8c099f95dfddcd8d88fb2642eec (patch) | |
tree | 8ef1d94f531ce8f8c888c0d9d6af2ded8844d34b | |
parent | ae561ffba9bbc9bd74c39fd859ca9e38fdd4f4bf (diff) | |
download | BlockedNumberProvider-36f482213f87a8c099f95dfddcd8d88fb2642eec.tar.gz |
Allow all carriers to access BlockedNumberProvider.
The previous permission check only allowed carrier apps for the
default subscription to access the provider. However, the provider is
a singleton, with numbers blocked globally rather than on a
per-subscription basis. Therefore, even non-default carrier apps
should be able to access the database, as such carriers can still be
in active use in DSDS mode.
Fixes: 133232808
Test: TreeHugger to run unit test
Change-Id: I68811f4032a452e0b3478bb5f4554f71fdc66067
-rw-r--r-- | src/com/android/providers/blockednumber/BlockedNumberProvider.java | 2 | ||||
-rw-r--r-- | tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/com/android/providers/blockednumber/BlockedNumberProvider.java b/src/com/android/providers/blockednumber/BlockedNumberProvider.java index 68a8c65..2e029d8 100644 --- a/src/com/android/providers/blockednumber/BlockedNumberProvider.java +++ b/src/com/android/providers/blockednumber/BlockedNumberProvider.java @@ -632,7 +632,7 @@ public class BlockedNumberProvider extends ContentProvider { final TelephonyManager telephonyManager = getContext().getSystemService(TelephonyManager.class); - return telephonyManager.checkCarrierPrivilegesForPackage(callingPackage) == + return telephonyManager.checkCarrierPrivilegesForPackageAnyPhone(callingPackage) == TelephonyManager.CARRIER_PRIVILEGE_STATUS_HAS_ACCESS; } return false; diff --git a/tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java b/tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java index 828028f..8b5e82b 100644 --- a/tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java +++ b/tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java @@ -479,7 +479,7 @@ public class BlockedNumberProviderTest extends AndroidTestCase { public void testCarrierAppCanAccessApis() { doReturn(PackageManager.PERMISSION_DENIED) .when(mMockContext).checkCallingPermission(anyString()); - when(mMockContext.mTelephonyManager.checkCarrierPrivilegesForPackage(anyString())) + when(mMockContext.mTelephonyManager.checkCarrierPrivilegesForPackageAnyPhone(anyString())) .thenReturn(TelephonyManager.CARRIER_PRIVILEGE_STATUS_HAS_ACCESS); mResolver.insert( @@ -489,7 +489,7 @@ public class BlockedNumberProviderTest extends AndroidTestCase { // Dialer check is executed twice: once for insert, and once for isBlocked. verify(mMockContext.mTelephonyManager, times(2)) - .checkCarrierPrivilegesForPackage(anyString()); + .checkCarrierPrivilegesForPackageAnyPhone(anyString()); } public void testSelfCanAccessApis() { |