Merge "Check USB device/accessory perms with sys identity" into qt-dev

am: 518525fa78

Change-Id: I104e43db8637cec7e1fa86cb5dd3f71194d1693d
This commit is contained in:
Philip P. Moltmann
2019-05-28 13:46:51 -07:00
committed by android-build-merger

View File

@@ -85,22 +85,22 @@ class UsbSerialReader extends IUsbSerialReader.Stub {
throw new RemoteException("package " + packageName + " cannot be found");
}
packageTargetSdkVersion = pkg.applicationInfo.targetSdkVersion;
} finally {
Binder.restoreCallingIdentity(token);
}
if (packageTargetSdkVersion >= Build.VERSION_CODES.Q) {
if (mContext.checkPermission(android.Manifest.permission.MANAGE_USB, pid, uid)
== PackageManager.PERMISSION_DENIED) {
UsbUserSettingsManager settings = mSettingsManager.getSettingsForUser(
UserHandle.getUserId(uid));
if (packageTargetSdkVersion >= Build.VERSION_CODES.Q) {
if (mContext.checkPermission(android.Manifest.permission.MANAGE_USB, pid, uid)
== PackageManager.PERMISSION_DENIED) {
UsbUserSettingsManager settings = mSettingsManager.getSettingsForUser(
UserHandle.getUserId(uid));
if (mDevice instanceof UsbDevice) {
settings.checkPermission((UsbDevice) mDevice, packageName, uid);
} else {
settings.checkPermission((UsbAccessory) mDevice, uid);
if (mDevice instanceof UsbDevice) {
settings.checkPermission((UsbDevice) mDevice, packageName, uid);
} else {
settings.checkPermission((UsbAccessory) mDevice, uid);
}
}
}
} finally {
Binder.restoreCallingIdentity(token);
}
}