am d35b072d: Merge "Fix accessiblity introspection from the shell user regression." into lmp-dev
* commit 'd35b072dca42d249c219c886322c122739b086d7': Fix accessiblity introspection from the shell user regression.
This commit is contained in:
@@ -2117,7 +2117,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -2148,7 +2148,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -2181,7 +2181,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -2233,7 +2233,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -2285,7 +2285,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -2337,7 +2337,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -2390,7 +2390,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -2441,7 +2441,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -2480,7 +2480,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -2527,7 +2527,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
// performs the current profile parent resolution.
|
// performs the current profile parent resolution.
|
||||||
final int resolvedUserId = mSecurityPolicy
|
final int resolvedUserId = mSecurityPolicy
|
||||||
.resolveCallingUserIdEnforcingPermissionsLocked(
|
.resolveCallingUserIdEnforcingPermissionsLocked(
|
||||||
UserHandle.getCallingUserId());
|
UserHandle.USER_CURRENT);
|
||||||
if (resolvedUserId != mCurrentUserId) {
|
if (resolvedUserId != mCurrentUserId) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -3621,6 +3621,12 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub {
|
|||||||
if (callingUserId == userId) {
|
if (callingUserId == userId) {
|
||||||
return resolveProfileParentLocked(userId);
|
return resolveProfileParentLocked(userId);
|
||||||
}
|
}
|
||||||
|
final int callingUserParentId = resolveProfileParentLocked(callingUserId);
|
||||||
|
if (callingUserParentId == mCurrentUserId &&
|
||||||
|
(userId == UserHandle.USER_CURRENT
|
||||||
|
|| userId == UserHandle.USER_CURRENT_OR_SELF)) {
|
||||||
|
return mCurrentUserId;
|
||||||
|
}
|
||||||
if (!hasPermission(Manifest.permission.INTERACT_ACROSS_USERS)
|
if (!hasPermission(Manifest.permission.INTERACT_ACROSS_USERS)
|
||||||
&& !hasPermission(Manifest.permission.INTERACT_ACROSS_USERS_FULL)) {
|
&& !hasPermission(Manifest.permission.INTERACT_ACROSS_USERS_FULL)) {
|
||||||
throw new SecurityException("Call from user " + callingUserId + " as user "
|
throw new SecurityException("Call from user " + callingUserId + " as user "
|
||||||
|
|||||||
Reference in New Issue
Block a user