summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/midi/java/com/android/server/midi/MidiService.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/services/midi/java/com/android/server/midi/MidiService.java b/services/midi/java/com/android/server/midi/MidiService.java
index 47505a398a6f..e31be82bcff7 100644
--- a/services/midi/java/com/android/server/midi/MidiService.java
+++ b/services/midi/java/com/android/server/midi/MidiService.java
@@ -43,6 +43,7 @@ import android.os.IBinder;
import android.os.Process;
import android.os.RemoteException;
import android.os.UserHandle;
+import android.util.EventLog;
import android.util.Log;
import com.android.internal.content.PackageMonitor;
@@ -736,13 +737,19 @@ public class MidiService extends IMidiManager.Stub {
@Override
public MidiDeviceInfo getServiceDeviceInfo(String packageName, String className) {
+ int uid = Binder.getCallingUid();
synchronized (mDevicesByInfo) {
for (Device device : mDevicesByInfo.values()) {
ServiceInfo serviceInfo = device.getServiceInfo();
if (serviceInfo != null &&
packageName.equals(serviceInfo.packageName) &&
className.equals(serviceInfo.name)) {
- return device.getDeviceInfo();
+ if (device.isUidAllowed(uid)) {
+ return device.getDeviceInfo();
+ } else {
+ EventLog.writeEvent(0x534e4554, "185796676", -1, "");
+ return null;
+ }
}
}
return null;