summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRicky Wai <rickywai@google.com>2015-06-01 17:17:05 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-06-01 17:17:05 +0000
commit887e7bb76379f8d49215e3bb310ff24f0d2478b0 (patch)
treefd365ae44565ec1b126cb95bffc40ba9c7dca201
parent48761b9d3b71b499f8640406eb02a62133cd4dc4 (diff)
parentd67c70c551749929f2fa845279b554132bf992f0 (diff)
downloadpackages_providers_ContactsProvider-887e7bb76379f8d49215e3bb310ff24f0d2478b0.zip
packages_providers_ContactsProvider-887e7bb76379f8d49215e3bb310ff24f0d2478b0.tar.gz
packages_providers_ContactsProvider-887e7bb76379f8d49215e3bb310ff24f0d2478b0.tar.bz2
am d67c70c5: Merge "Fix enterprise path permission checking" into mnc-dev
* commit 'd67c70c551749929f2fa845279b554132bf992f0': Fix enterprise path permission checking
-rw-r--r--src/com/android/providers/contacts/ContactsProvider2.java11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/com/android/providers/contacts/ContactsProvider2.java b/src/com/android/providers/contacts/ContactsProvider2.java
index b2cbc8b..480545c 100644
--- a/src/com/android/providers/contacts/ContactsProvider2.java
+++ b/src/com/android/providers/contacts/ContactsProvider2.java
@@ -205,6 +205,7 @@ public class ContactsProvider2 extends AbstractContactsProvider
private static final String READ_PERMISSION = "android.permission.READ_CONTACTS";
private static final String WRITE_PERMISSION = "android.permission.WRITE_CONTACTS";
+ private static final String INTERACT_ACROSS_USERS = "android.permission.INTERACT_ACROSS_USERS";
/* package */ static final String UPDATE_TIMES_CONTACTED_CONTACTS_TABLE =
"UPDATE " + Tables.CONTACTS + " SET " + Contacts.TIMES_CONTACTED + "=" +
@@ -5844,6 +5845,8 @@ public class ContactsProvider2 extends AbstractContactsProvider
new Object[] {getMaxDisplayPhotoDim(), getMaxThumbnailDim()});
}
case PHONES_ENTERPRISE: {
+ ContactsPermissions.enforceCallingOrSelfPermission(getContext(),
+ INTERACT_ACROSS_USERS);
return queryMergedDataPhones(uri, projection, selection, selectionArgs, sortOrder);
}
case PHONES:
@@ -6569,9 +6572,8 @@ public class ContactsProvider2 extends AbstractContactsProvider
break;
}
case RAW_CONTACT_ENTITIES_CORP: {
- // As it's protected by android.permission.INTERACT_ACROSS_USERS
- // already and it is used by Bluetooth application, we do not
- // check caller-id policy
+ ContactsPermissions.enforceCallingOrSelfPermission(getContext(),
+ INTERACT_ACROSS_USERS);
final int corpUserId = UserUtils.getCorpUserId(getContext(), false);
if (corpUserId < 0) {
// No Corp user or policy not allowed, return empty cursor
@@ -6747,9 +6749,6 @@ public class ContactsProvider2 extends AbstractContactsProvider
final Cursor primaryCursor = queryLocal(localUri, projection, selection, selectionArgs,
sortOrder, directoryId, null);
try {
- // As it's protected by android.permission.INTERACT_ACROSS_USERS
- // already and it is used by Bluetooth application, we do not
- // check caller-id policy
final int corpUserId = UserUtils.getCorpUserId(getContext(), false);
if (corpUserId < 0) {
// No Corp user or policy not allowed