Snap for 9966400 from cdbd29aa0b32c5d79eb342b2f46d2fe47cc2a965 to udc-release
Change-Id: I8356cfa30b2da1d40e78df7b4527c11b9b4be389
diff --git a/src/com/android/ons/OpportunisticNetworkService.java b/src/com/android/ons/OpportunisticNetworkService.java
index 485722f..d41051c 100644
--- a/src/com/android/ons/OpportunisticNetworkService.java
+++ b/src/com/android/ons/OpportunisticNetworkService.java
@@ -313,10 +313,19 @@
@Override
public int getPreferredDataSubscriptionId(String callingPackage,
String callingFeatureId) {
- TelephonyPermissions
- .checkCallingOrSelfReadPhoneState(mContext,
- mSubscriptionManager.getDefaultSubscriptionId(),
- callingPackage, callingFeatureId, "getPreferredDataSubscriptionId");
+ if (!TelephonyPermissions.checkReadPhoneStateOnAnyActiveSub(
+ mContext,
+ Binder.getCallingPid(),
+ Binder.getCallingUid(),
+ callingPackage,
+ callingFeatureId,
+ "getPreferredDataSubscriptionId")) {
+ throw new SecurityException(
+ "getPreferredDataSubscriptionId requires READ_PHONE_STATE,"
+ + " READ_PRIVILEGED_PHONE_STATE, or carrier privileges on"
+ + " any active subscription.");
+ }
+
final long identity = Binder.clearCallingIdentity();
try {
return mProfileSelector.getPreferredDataSubscriptionId();