Merge "hidden API getCertsFromCarrierPrivilegeAccessRules"
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index 91f832b..e4f766f 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -8244,6 +8244,29 @@
}
/**
+ * Return a list of certs in hex string from loaded carrier privileges access rules.
+ *
+ * @return a list of certificate in hex string. return {@code null} if there is no certs
+ * or privilege rules are not loaded yet.
+ *
+ * <p>Requires Permission:
+ * {@link android.Manifest.permission#READ_PRIVILEGED_PHONE_STATE}
+ * @hide
+ */
+ @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
+ public List<String> getCertsFromCarrierPrivilegeAccessRules() {
+ try {
+ ITelephony service = getITelephony();
+ if (service != null) {
+ return service.getCertsFromCarrierPrivilegeAccessRules(getSubId());
+ }
+ } catch (RemoteException ex) {
+ // This could happen if binder process crashes.
+ }
+ return null;
+ }
+
+ /**
* Return the application ID for the uicc application type like {@link #APPTYPE_CSIM}.
* All uicc applications are uniquely identified by application ID. See ETSI 102.221 and 101.220
* <p>Requires Permission:
diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl
index 2e79c61..4b9b0fb 100644
--- a/telephony/java/com/android/internal/telephony/ITelephony.aidl
+++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl
@@ -1617,4 +1617,9 @@
* return true if TTY over VoLTE is enabled for the subscription specified.
*/
boolean isTtyOverVolteEnabled(int subId);
+
+ /**
+ * Return a list of certs in hex string from loaded carrier privileges access rules.
+ */
+ List<String> getCertsFromCarrierPrivilegeAccessRules(int subId);
}