From ce1a6de8a921359fdf1f40d232ac55e7eb35037c Mon Sep 17 00:00:00 2001 From: Benedict Wong Date: Fri, 3 Feb 2023 23:25:37 +0000 Subject: Add AIDL methods to override carrier package This change introduces a Carrier Service Package override, ensuring that CTS can export a CarrierService, and set itself as the carrier service. The requirement for the application to also be carrier-privileged still stands, but omits the SIM-certificate-match requirement, instead allowing carrierConfig based certificates + carrier service package override as a sufficient gate (which critically need to both be doable with the CTS Shell permission identity) Bug: 266904760 Test: Manually tested with a demo CTS build, will be used for Core Networking CTS tests Change-Id: I9c31e19dd122123e8e102c901efaa99b2c729635 Merged-In: I9c31e19dd122123e8e102c901efaa99b2c729635 (cherry picked from commit 7e6571f100132127df44b5f0927199b6fd9690d2) --- .../java/com/android/internal/telephony/ITelephony.aidl | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl index ecafe702ea4e..9d05517050e2 100644 --- a/telephony/java/com/android/internal/telephony/ITelephony.aidl +++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl @@ -1790,6 +1790,22 @@ interface ITelephony { void setCarrierTestOverride(int subId, String mccmnc, String imsi, String iccid, String gid1, String gid2, String plmn, String spn, String carrierPrivilegeRules, String apn); + /** + * Forcibly sets a package as a carrier provisioning package. + * + * This override is ephemeral, and will disappear upon phone process restart (including + * device reboot). + * + * WARNING: This API is meant for testing purposes only. This enables automated testing for + * cases where the carrier service package is used as a permissioning gate for features such as + * restricted carrier network access (restricted APNs and Merged Carrier Wifi) + * + * @param carrierServicePackage The package that should be marked as the carrier service + * package, or {@code null} to disable the override. + */ + void setCarrierServicePackageOverride(int subId, String carrierServicePackage, + String callingPackage); + /** * A test API to return installed carrier id list version. */ -- cgit v1.2.3-59-g8ed1b