Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e8eea12a authored by Jeff Brown's avatar Jeff Brown
Browse files

Allow system server to bind to USB devices.

Change-Id: I31f9ed1ff3fcda53f62f08ae198d18d0df3321b7
parent 6c81a93e
Loading
Loading
Loading
Loading
+11 −2
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@ import android.hardware.usb.UsbInterface;
import android.hardware.usb.UsbManager;
import android.os.Binder;
import android.os.Environment;
import android.os.Process;
import android.os.UserHandle;
import android.util.AtomicFile;
import android.util.Log;
@@ -853,21 +854,29 @@ class UsbSettingsManager {

    public boolean hasPermission(UsbDevice device) {
        synchronized (mLock) {
            int uid = Binder.getCallingUid();
            if (uid == Process.SYSTEM_UID) {
                return true;
            }
            SparseBooleanArray uidList = mDevicePermissionMap.get(device.getDeviceName());
            if (uidList == null) {
                return false;
            }
            return uidList.get(Binder.getCallingUid());
            return uidList.get(uid);
        }
    }

    public boolean hasPermission(UsbAccessory accessory) {
        synchronized (mLock) {
            int uid = Binder.getCallingUid();
            if (uid == Process.SYSTEM_UID) {
                return true;
            }
            SparseBooleanArray uidList = mAccessoryPermissionMap.get(accessory);
            if (uidList == null) {
                return false;
            }
            return uidList.get(Binder.getCallingUid());
            return uidList.get(uid);
        }
    }