Merge "Prevent system uid component from running in an app process" into klp-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
dc9cfca801
@ -2526,9 +2526,14 @@ public final class ActivityManagerService extends ActivityManagerNative
|
|||||||
// should never happen).
|
// should never happen).
|
||||||
SparseArray<ProcessRecord> procs = mProcessNames.getMap().get(processName);
|
SparseArray<ProcessRecord> procs = mProcessNames.getMap().get(processName);
|
||||||
if (procs == null) return null;
|
if (procs == null) return null;
|
||||||
final int N = procs.size();
|
final int procCount = procs.size();
|
||||||
for (int i = 0; i < N; i++) {
|
for (int i = 0; i < procCount; i++) {
|
||||||
if (UserHandle.isSameUser(procs.keyAt(i), uid)) return procs.valueAt(i);
|
final int procUid = procs.keyAt(i);
|
||||||
|
if (UserHandle.isApp(procUid) || !UserHandle.isSameUser(procUid, uid)) {
|
||||||
|
// Don't use an app process or different user process for system component.
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
return procs.valueAt(i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ProcessRecord proc = mProcessNames.get(processName, uid);
|
ProcessRecord proc = mProcessNames.get(processName, uid);
|
||||||
|
Reference in New Issue
Block a user