Clear binding identity before calling satellite provision APIs
Change-Id: I5b68a79fe71326370ce4d9b4b76bd4bae89f9e19
Flag: EXEMPT bugfix
Bug: 368435815
Test: SatelliteManagerTestOnMockService
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index daa4957..bc560d9 100644
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -13359,8 +13359,13 @@
@NonNull String token, @NonNull byte[] provisionData,
@NonNull IIntegerConsumer callback) {
enforceSatelliteCommunicationPermission("provisionSatelliteService");
- return mSatelliteController.provisionSatelliteService(token, provisionData,
+ final long identity = Binder.clearCallingIdentity();
+ try {
+ return mSatelliteController.provisionSatelliteService(token, provisionData,
callback);
+ } finally {
+ Binder.restoreCallingIdentity(identity);
+ }
}
/**
@@ -13378,7 +13383,12 @@
public void deprovisionSatelliteService(
@NonNull String token, @NonNull IIntegerConsumer callback) {
enforceSatelliteCommunicationPermission("deprovisionSatelliteService");
- mSatelliteController.deprovisionSatelliteService(token, callback);
+ final long identity = Binder.clearCallingIdentity();
+ try {
+ mSatelliteController.deprovisionSatelliteService(token, callback);
+ } finally {
+ Binder.restoreCallingIdentity(identity);
+ }
}
/**