Check for READ_PHONE_STATE when querying voicemail messages
Bug: 119884553
Test: manual
Change-Id: Ie2fb8c2e427aad8bd54ba828eb8e0b1d33d37395
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index dfea90c..cb59583 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -2599,17 +2599,14 @@
}
/**
- * Returns the unread count of voicemails
- */
- public int getVoiceMessageCount() {
- return getVoiceMessageCountForSubscriber(getDefaultSubscription());
- }
-
- /**
* Returns the unread count of voicemails for a subId
*/
@Override
- public int getVoiceMessageCountForSubscriber( int subId) {
+ public int getVoiceMessageCountForSubscriber(int subId, String callingPackage) {
+ if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(
+ mApp, subId, callingPackage, "getVoiceMessageCountForSubscriber")) {
+ return 0;
+ }
final long identity = Binder.clearCallingIdentity();
try {
final Phone phone = getPhone(subId);