From 32d07dce7adc23723ca2b9f76d9542a35a5ffa6b Mon Sep 17 00:00:00 2001 From: Chad Brubaker Date: Thu, 1 Dec 2016 15:30:01 -0800 Subject: [PATCH] Disallow sharedUserId in Ephemeral apps Test: adb install --ephemeral apk fails with a shareduid defined Change-Id: I2e03d89b983b99e35ea799618f6830b309c09b49 --- core/java/android/content/pm/PackageParser.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/core/java/android/content/pm/PackageParser.java b/core/java/android/content/pm/PackageParser.java index bb9c18abe1bcb..ddd3a52764293 100644 --- a/core/java/android/content/pm/PackageParser.java +++ b/core/java/android/content/pm/PackageParser.java @@ -1696,6 +1696,11 @@ public class PackageParser { String str = sa.getNonConfigurationString( com.android.internal.R.styleable.AndroidManifest_sharedUserId, 0); if (str != null && str.length() > 0) { + if ((flags & PARSE_IS_EPHEMERAL) != 0) { + outError[0] = "sharedUserId not allowed in ephemeral application"; + mParseError = PackageManager.INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID; + return null; + } String nameError = validateName(str, true, false); if (nameError != null && !"android".equals(pkg.packageName)) { outError[0] = " specifies bad sharedUserId name \""