summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2018-07-30 19:49:20 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2018-07-30 19:49:20 +0000
commitc14a4be7998b18ce7caea2b63ef30ca09868d1f7 (patch)
tree1a23420a087eab00750ed4bcb0f437cd9bfece50
parent527c79d96dd1321039bb092a6a75737ef42a6913 (diff)
parent6cc64f7244928a52e8b0aa149d075bd82195aa4d (diff)
downloadbase-c14a4be7998b18ce7caea2b63ef30ca09868d1f7.tar.gz
Merge "Have proper permission check in getConfigForSubId"android-n-iot-release-smart-display-r2
-rw-r--r--config/hiddenapi-light-greylist.txt2
-rw-r--r--core/java/android/app/SystemServiceRegistry.java2
-rw-r--r--telephony/java/android/telephony/CarrierConfigManager.java7
-rw-r--r--telephony/java/android/telephony/TelephonyManager.java4
-rw-r--r--telephony/java/com/android/internal/telephony/ICarrierConfigLoader.aidl2
-rw-r--r--telephony/java/com/android/internal/telephony/ITelephony.aidl7
6 files changed, 15 insertions, 9 deletions
diff --git a/config/hiddenapi-light-greylist.txt b/config/hiddenapi-light-greylist.txt
index 31914a6afe00..143a0fbd6955 100644
--- a/config/hiddenapi-light-greylist.txt
+++ b/config/hiddenapi-light-greylist.txt
@@ -7809,7 +7809,7 @@ Lcom/android/internal/telephony/GsmAlphabet;->sLanguageTables:[Ljava/lang/String
Lcom/android/internal/telephony/GsmAlphabet;->stringToGsm7BitPacked(Ljava/lang/String;IZII)[B
Lcom/android/internal/telephony/GsmAlphabet;->stringToGsm7BitPackedWithHeader(Ljava/lang/String;[BII)[B
Lcom/android/internal/telephony/GsmAlphabet;->stringToGsm8BitPacked(Ljava/lang/String;)[B
-Lcom/android/internal/telephony/ICarrierConfigLoader;->getConfigForSubId(I)Landroid/os/PersistableBundle;
+Lcom/android/internal/telephony/ICarrierConfigLoader;->getConfigForSubId(ILjava/lang/String;)Landroid/os/PersistableBundle;
Lcom/android/internal/telephony/IMms$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/telephony/IMms;
Lcom/android/internal/telephony/IPhoneStateListener$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/telephony/IPhoneStateListener;
Lcom/android/internal/telephony/IPhoneStateListener;->onCallForwardingIndicatorChanged(Z)V
diff --git a/core/java/android/app/SystemServiceRegistry.java b/core/java/android/app/SystemServiceRegistry.java
index 26ea06854b89..cda5b3417807 100644
--- a/core/java/android/app/SystemServiceRegistry.java
+++ b/core/java/android/app/SystemServiceRegistry.java
@@ -490,7 +490,7 @@ final class SystemServiceRegistry {
new CachedServiceFetcher<CarrierConfigManager>() {
@Override
public CarrierConfigManager createService(ContextImpl ctx) {
- return new CarrierConfigManager();
+ return new CarrierConfigManager(ctx.getOuterContext());
}});
registerService(Context.TELECOM_SERVICE, TelecomManager.class,
diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java
index 1fe17b504b61..64df6fed3758 100644
--- a/telephony/java/android/telephony/CarrierConfigManager.java
+++ b/telephony/java/android/telephony/CarrierConfigManager.java
@@ -51,10 +51,13 @@ public class CarrierConfigManager {
public static final String EXTRA_SUBSCRIPTION_INDEX =
SubscriptionManager.EXTRA_SUBSCRIPTION_INDEX;
+ private final Context mContext;
+
/**
* @hide
*/
- public CarrierConfigManager() {
+ public CarrierConfigManager(Context context) {
+ mContext = context;
}
/**
@@ -2281,7 +2284,7 @@ public class CarrierConfigManager {
+ " ICarrierConfigLoader is null");
return null;
}
- return loader.getConfigForSubId(subId);
+ return loader.getConfigForSubId(subId, mContext.getOpPackageName());
} catch (RemoteException ex) {
Rlog.e(TAG, "Error getting config for subId " + subId + ": "
+ ex.toString());
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index 3bc7341216e7..53cf87707205 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -6554,7 +6554,7 @@ public class TelephonyManager {
try {
ITelephony telephony = getITelephony();
if (telephony != null) {
- return telephony.canChangeDtmfToneLength();
+ return telephony.canChangeDtmfToneLength(mSubId, getOpPackageName());
}
} catch (RemoteException e) {
Log.e(TAG, "Error calling ITelephony#canChangeDtmfToneLength", e);
@@ -6573,7 +6573,7 @@ public class TelephonyManager {
try {
ITelephony telephony = getITelephony();
if (telephony != null) {
- return telephony.isWorldPhone();
+ return telephony.isWorldPhone(mSubId, getOpPackageName());
}
} catch (RemoteException e) {
Log.e(TAG, "Error calling ITelephony#isWorldPhone", e);
diff --git a/telephony/java/com/android/internal/telephony/ICarrierConfigLoader.aidl b/telephony/java/com/android/internal/telephony/ICarrierConfigLoader.aidl
index 511573170bb0..d9471ae2c60d 100644
--- a/telephony/java/com/android/internal/telephony/ICarrierConfigLoader.aidl
+++ b/telephony/java/com/android/internal/telephony/ICarrierConfigLoader.aidl
@@ -23,7 +23,7 @@ import android.os.PersistableBundle;
*/
interface ICarrierConfigLoader {
- PersistableBundle getConfigForSubId(int subId);
+ PersistableBundle getConfigForSubId(int subId, String callingPackage);
void notifyConfigChangedForSubId(int subId);
diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl
index 70354b212f25..2c5732ad4e30 100644
--- a/telephony/java/com/android/internal/telephony/ITelephony.aidl
+++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl
@@ -1123,16 +1123,19 @@ interface ITelephony {
/**
* Whether the DTMF tone length can be changed.
*
+ * @param subId The subscription to use.
+ * @param callingPackage The package making the call.
* @return {@code true} if the DTMF tone length can be changed.
*/
- boolean canChangeDtmfToneLength();
+ boolean canChangeDtmfToneLength(int subId, String callingPackage);
/**
* Whether the device is a world phone.
*
+ * @param callingPackage The package making the call.
* @return {@code true} if the devices is a world phone.
*/
- boolean isWorldPhone();
+ boolean isWorldPhone(int subId, String callingPackage);
/**
* Whether the phone supports TTY mode.