Add correct permissions check for GTS testing

Bug: 77141737
Test: atest GtsImsServiceTests
Merged-In: I1bd3e2280c753b4a7a09e986a253ee45dc6f4211
Change-Id: I0bcd2970ccaf0f20757d87f263a12bc46c7e9299
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index d181e5a..bda90a5 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -2748,7 +2748,11 @@
      * @hide
      */
     public boolean setImsService(int slotId, boolean isCarrierImsService, String packageName) {
-        enforceModifyPermission();
+        int[] subIds = SubscriptionManager.getSubId(slotId);
+        TelephonyPermissions.enforceCallingOrSelfModifyPermissionOrCarrierPrivilege(mApp,
+                (subIds != null ? subIds[0] : SubscriptionManager.INVALID_SUBSCRIPTION_ID),
+                "setImsService");
+
         return PhoneFactory.getImsResolver().overrideImsServiceConfiguration(slotId,
                 isCarrierImsService, packageName);
     }
@@ -2762,7 +2766,11 @@
      * @return the package name of the ImsService configuration.
      */
     public String getImsService(int slotId, boolean isCarrierImsService) {
-        enforceReadPrivilegedPermission();
+        int[] subIds = SubscriptionManager.getSubId(slotId);
+        TelephonyPermissions.enforceCallingOrSelfModifyPermissionOrCarrierPrivilege(mApp,
+                (subIds != null ? subIds[0] : SubscriptionManager.INVALID_SUBSCRIPTION_ID),
+                "getImsService");
+
         return PhoneFactory.getImsResolver().getImsServiceConfiguration(slotId,
                 isCarrierImsService);
     }