summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbhijith Shastry <ashastry@google.com>2016-05-04 20:00:08 +0000
committerandroid-build-merger <android-build-merger@google.com>2016-05-04 20:00:08 +0000
commita2ac4fcc4982f08ec33b4f84ae071723fd6c03c0 (patch)
tree26ea37d306b811abafafacf5548c2aacf7baca66
parent73c50abf6d759cc2fc354e825776c0e7a780d42b (diff)
parentdb78c1305a83f30c6ee0b2023fe7d472540c5593 (diff)
downloadBlockedNumberProvider-a2ac4fcc4982f08ec33b4f84ae071723fd6c03c0.tar.gz
Throw SecurityException when secondary user attempts to access BlockedNumberProvider. am: 91df11043f am: 13f79bc1ba
am: db78c1305a * commit 'db78c1305a83f30c6ee0b2023fe7d472540c5593': Throw SecurityException when secondary user attempts to access BlockedNumberProvider. Change-Id: Ideeb47590e2b873b396a1ddc2322d3d4e64d1e82
-rw-r--r--src/com/android/providers/blockednumber/BlockedNumberProvider.java8
-rw-r--r--tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java21
2 files changed, 17 insertions, 12 deletions
diff --git a/src/com/android/providers/blockednumber/BlockedNumberProvider.java b/src/com/android/providers/blockednumber/BlockedNumberProvider.java
index 4d0193b..6d96188 100644
--- a/src/com/android/providers/blockednumber/BlockedNumberProvider.java
+++ b/src/com/android/providers/blockednumber/BlockedNumberProvider.java
@@ -525,7 +525,7 @@ public class BlockedNumberProvider extends ContentProvider {
private void checkForPermissionAndPrimaryUser(String permission) {
checkForPermission(permission);
if (!canCurrentUserBlockUsers()) {
- throw new UnsupportedOperationException();
+ throwCurrentUserNotPermittedSecurityException();
}
}
@@ -547,7 +547,7 @@ public class BlockedNumberProvider extends ContentProvider {
private void enforceSystemPermissionAndUser(String permission) {
if (!canCurrentUserBlockUsers()) {
- throw new UnsupportedOperationException();
+ throwCurrentUserNotPermittedSecurityException();
}
if (!passesSystemPermissionCheck(permission)) {
@@ -567,4 +567,8 @@ public class BlockedNumberProvider extends ContentProvider {
private void throwSecurityException() {
throw new SecurityException("Caller must be system, default dialer or default SMS app");
}
+
+ private void throwCurrentUserNotPermittedSecurityException() {
+ throw new SecurityException("The current user cannot perform this operation");
+ }
}
diff --git a/tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java b/tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java
index 19185be..6c703b8 100644
--- a/tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java
+++ b/tests/src/com/android/providers/blockednumber/BlockedNumberProviderTest.java
@@ -529,32 +529,33 @@ public class BlockedNumberProviderTest extends AndroidTestCase {
try {
insert(cv(BlockedNumbers.COLUMN_ORIGINAL_NUMBER, "123"));
- fail("UnsupportedOperationException expected");
- } catch (UnsupportedOperationException expected) {
+ fail("SecurityException expected");
+ } catch (SecurityException expected) {
+ assertTrue(expected.getMessage().contains("current user"));
}
try {
mResolver.query(BlockedNumbers.CONTENT_URI, null, null, null, null);
- fail("UnsupportedOperationException expected");
- } catch (UnsupportedOperationException expected) {
+ fail("SecurityException expected");
+ } catch (SecurityException expected) {
}
try {
mResolver.delete(BlockedNumbers.CONTENT_URI, null, null);
- fail("UnsupportedOperationException expected");
- } catch (UnsupportedOperationException expected) {
+ fail("SecurityException expected");
+ } catch (SecurityException expected) {
}
try {
BlockedNumberContract.isBlocked(mMockContext, "123");
- fail("UnsupportedOperationException expected");
- } catch (UnsupportedOperationException expected) {
+ fail("SecurityException expected");
+ } catch (SecurityException expected) {
}
try {
BlockedNumberContract.unblock(mMockContext, "123");
- fail("UnsupportedOperationException expected");
- } catch (UnsupportedOperationException expected) {
+ fail("SecurityException expected");
+ } catch (SecurityException expected) {
}
}