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
This commit is contained in:
Benedict Wong
2023-02-03 23:25:37 +00:00
parent 243dd7a21a
commit 7e6571f100

View File

@@ -1841,6 +1841,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.
*/