Loading src/java/com/android/internal/telephony/SubscriptionController.java +18 −6 Original line number Diff line number Diff line Loading @@ -59,6 +59,7 @@ import android.telephony.UiccAccessRule; import android.telephony.UiccSlotInfo; import android.telephony.euicc.EuiccManager; import android.text.TextUtils; import android.util.EventLog; import android.util.LocalLog; import android.util.Log; Loading Loading @@ -914,6 +915,10 @@ public class SubscriptionController extends ISub.Stub { subList = getSubInfo(null, null); if (subList != null) { if (VDBG) logd("[getAllSubInfoList]- " + subList.size() + " infos return"); subList.stream().map( subscriptionInfo -> conditionallyRemoveIdentifiers(subscriptionInfo, callingPackage, callingFeatureId, "getAllSubInfoList")) .collect(Collectors.toList()); } else { if (VDBG) logd("[getAllSubInfoList]- no info return"); } Loading Loading @@ -1074,12 +1079,18 @@ public class SubscriptionController extends ISub.Stub { @Override public List<SubscriptionInfo> getAvailableSubscriptionInfoList(String callingPackage, String callingFeatureId) { // This API isn't public, so no need to provide a valid subscription ID - we're not worried // about carrier-privileged callers not having access. if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState( mContext, SubscriptionManager.INVALID_SUBSCRIPTION_ID, callingPackage, callingFeatureId, "getAvailableSubscriptionInfoList")) { throw new SecurityException("Need READ_PHONE_STATE to call " try { enforceReadPrivilegedPhoneState("getAvailableSubscriptionInfoList"); } catch (SecurityException e) { try { mContext.enforceCallingOrSelfPermission(Manifest.permission.READ_PHONE_STATE, null); // If caller doesn't have READ_PRIVILEGED_PHONE_STATE permission but only // has READ_PHONE_STATE permission, log this event. EventLog.writeEvent(0x534e4554, "185235454", Binder.getCallingUid()); } catch (SecurityException ex) { // Ignore } throw new SecurityException("Need READ_PRIVILEGED_PHONE_STATE to call " + " getAvailableSubscriptionInfoList"); } Loading Loading @@ -4205,6 +4216,7 @@ public class SubscriptionController extends ISub.Stub { if (!hasIdentifierAccess) { result.clearIccId(); result.clearCardString(); result.clearGroupUuid(); } if (!hasPhoneNumberAccess) { result.clearNumber(); Loading Loading
src/java/com/android/internal/telephony/SubscriptionController.java +18 −6 Original line number Diff line number Diff line Loading @@ -59,6 +59,7 @@ import android.telephony.UiccAccessRule; import android.telephony.UiccSlotInfo; import android.telephony.euicc.EuiccManager; import android.text.TextUtils; import android.util.EventLog; import android.util.LocalLog; import android.util.Log; Loading Loading @@ -914,6 +915,10 @@ public class SubscriptionController extends ISub.Stub { subList = getSubInfo(null, null); if (subList != null) { if (VDBG) logd("[getAllSubInfoList]- " + subList.size() + " infos return"); subList.stream().map( subscriptionInfo -> conditionallyRemoveIdentifiers(subscriptionInfo, callingPackage, callingFeatureId, "getAllSubInfoList")) .collect(Collectors.toList()); } else { if (VDBG) logd("[getAllSubInfoList]- no info return"); } Loading Loading @@ -1074,12 +1079,18 @@ public class SubscriptionController extends ISub.Stub { @Override public List<SubscriptionInfo> getAvailableSubscriptionInfoList(String callingPackage, String callingFeatureId) { // This API isn't public, so no need to provide a valid subscription ID - we're not worried // about carrier-privileged callers not having access. if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState( mContext, SubscriptionManager.INVALID_SUBSCRIPTION_ID, callingPackage, callingFeatureId, "getAvailableSubscriptionInfoList")) { throw new SecurityException("Need READ_PHONE_STATE to call " try { enforceReadPrivilegedPhoneState("getAvailableSubscriptionInfoList"); } catch (SecurityException e) { try { mContext.enforceCallingOrSelfPermission(Manifest.permission.READ_PHONE_STATE, null); // If caller doesn't have READ_PRIVILEGED_PHONE_STATE permission but only // has READ_PHONE_STATE permission, log this event. EventLog.writeEvent(0x534e4554, "185235454", Binder.getCallingUid()); } catch (SecurityException ex) { // Ignore } throw new SecurityException("Need READ_PRIVILEGED_PHONE_STATE to call " + " getAvailableSubscriptionInfoList"); } Loading Loading @@ -4205,6 +4216,7 @@ public class SubscriptionController extends ISub.Stub { if (!hasIdentifierAccess) { result.clearIccId(); result.clearCardString(); result.clearGroupUuid(); } if (!hasPhoneNumberAccess) { result.clearNumber(); Loading