Merge "Proper security labeling of multi-user data directories."
This commit is contained in:
@@ -265,7 +265,7 @@ public final class Installer {
|
||||
return execute(builder.toString());
|
||||
}
|
||||
|
||||
public int createUserData(String name, int uid, int userId) {
|
||||
public int createUserData(String name, int uid, int userId, String seinfo) {
|
||||
StringBuilder builder = new StringBuilder("mkuserdata");
|
||||
builder.append(' ');
|
||||
builder.append(name);
|
||||
@@ -273,6 +273,8 @@ public final class Installer {
|
||||
builder.append(uid);
|
||||
builder.append(' ');
|
||||
builder.append(userId);
|
||||
builder.append(' ');
|
||||
builder.append(seinfo != null ? seinfo : "!");
|
||||
return execute(builder.toString());
|
||||
}
|
||||
|
||||
|
||||
@@ -3816,7 +3816,7 @@ public class PackageManagerService extends IPackageManager.Stub {
|
||||
for (int user : users) {
|
||||
if (user != 0) {
|
||||
res = mInstaller.createUserData(packageName,
|
||||
UserHandle.getUid(user, uid), user);
|
||||
UserHandle.getUid(user, uid), user, seinfo);
|
||||
if (res < 0) {
|
||||
return res;
|
||||
}
|
||||
|
||||
@@ -2459,7 +2459,8 @@ final class Settings {
|
||||
ps.setInstalled((ps.pkgFlags&ApplicationInfo.FLAG_SYSTEM) != 0, userHandle);
|
||||
// Need to create a data directory for all apps under this user.
|
||||
installer.createUserData(ps.name,
|
||||
UserHandle.getUid(userHandle, ps.appId), userHandle);
|
||||
UserHandle.getUid(userHandle, ps.appId), userHandle,
|
||||
ps.pkg.applicationInfo.seinfo);
|
||||
}
|
||||
readDefaultPreferredAppsLPw(service, userHandle);
|
||||
writePackageRestrictionsLPr(userHandle);
|
||||
|
||||
Reference in New Issue
Block a user