summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2018-05-25 19:02:44 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2018-05-25 19:02:44 +0000
commitaeb855cd41fd707d55aa373d751477271a22a285 (patch)
tree172c361e0535fc0dbcb15aa5ecff0b2b93c2107f
parente9e5cb8c47e8ea304bf2c3402493f03ffd8bd826 (diff)
parent002a435d8dac20f1264ecaa63026cf428a1a02ce (diff)
downloadTelephony-oreo-m4-s7-release.tar.gz
Merge cherrypicks of [4195647, 4186616, 4186617, 4186167, 4186168, 4186582, 4195648, 4195649, 4195818, 4195819, 4195820, 4195821, 4195858, 4195650, 4195577, 4195859, 4195860, 4195861, 4195862, 4195863, 4195864, 4195865, 4195525, 4195526, 4195527, 4195528, 4195529, 4195530, 4195531, 4195532, 4195533, 4195534, 4195535, 4195536, 4186409, 4186410, 4186411, 4195537, 4195880, 4195881, 4195822, 4195898, 4195866, 4195652, 4195653, 4195582, 4195583, 4195584, 4195585, 4195586, 4195587, 4195588, 4195589, 4195590, 4195591, 4195592, 4195593, 4195594, 4195595, 4195654, 4186583, 4195882, 4195628, 4195629, 4195630, 4195655] into sparse-4732991-L55400000176809537android-8.1.0_r37oreo-m4-s7-release
Change-Id: I17dd46eb2c94966c628a16b110133a24d28cb64a
-rw-r--r--src/com/android/phone/PhoneInterfaceManager.java21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index 616acda12..b11418f1d 100644
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -2468,9 +2468,24 @@ public class PhoneInterfaceManager extends ITelephony.Stub {
* Get the forbidden PLMN List from the given app type (ex APPTYPE_USIM)
* on a particular subscription
*/
- public String[] getForbiddenPlmns(int subId, int appType) {
- mApp.enforceCallingOrSelfPermission(android.Manifest.permission.READ_PHONE_STATE,
- "Requires READ_PHONE_STATE");
+ public String[] getForbiddenPlmns(int subId, int appType, String callingPackage) {
+
+ if ((mApp.checkCallingOrSelfPermission(
+ android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
+ == PackageManager.PERMISSION_GRANTED
+ || mApp.checkCallingOrSelfPermission(
+ android.Manifest.permission.READ_PHONE_STATE)
+ == PackageManager.PERMISSION_GRANTED)
+ && mAppOps.noteOp(
+ AppOpsManager.OP_READ_PHONE_STATE, Binder.getCallingUid(), callingPackage)
+ != AppOpsManager.MODE_ALLOWED) {
+ EventLog.writeEvent(0x534e4554, "73884967", Binder.getCallingUid(),
+ "getForbiddenPlmns calllingPackage: " + callingPackage);
+ }
+
+ if (!canReadPhoneState(callingPackage, "getForbiddenPlmns")) {
+ return null;
+ }
if (appType != TelephonyManager.APPTYPE_USIM && appType != TelephonyManager.APPTYPE_SIM) {
loge("getForbiddenPlmnList(): App Type must be USIM or SIM");
return null;