Allow "android" package name.

Test: /data/nativetest64/installd_utils_test/installd_utils_test
Bug: 36062649

(cherry picked from commit ab7ac8d5a04bd3f38b85ce20ae5bb382f2a26585)

Change-Id: I20d546fdd20813e96bcb5f061ca5b352dff44450
diff --git a/cmds/installd/tests/installd_utils_test.cpp b/cmds/installd/tests/installd_utils_test.cpp
index 2840212..8b23b3e 100644
--- a/cmds/installd/tests/installd_utils_test.cpp
+++ b/cmds/installd/tests/installd_utils_test.cpp
@@ -330,19 +330,6 @@
              << "Package path should be a really long string of a's";
 }
 
-TEST_F(UtilsTest, CreatePkgPath_LongPkgNameFail) {
-    char path[PKG_PATH_MAX];
-
-    // Create long packagename of "aaaaa..."
-    size_t pkgnameSize = PKG_NAME_MAX + 1;
-    char pkgname[pkgnameSize + 1];
-    memset(pkgname, 'a', pkgnameSize);
-    pkgname[pkgnameSize] = '\0';
-
-    EXPECT_EQ(-1, create_pkg_path(path, pkgname, "", 0))
-            << "Should return error because package name is too long.";
-}
-
 TEST_F(UtilsTest, CreatePkgPath_LongPostfixFail) {
     char path[PKG_PATH_MAX];
 
@@ -510,6 +497,7 @@
 }
 
 TEST_F(UtilsTest, IsValidPackageName) {
+    EXPECT_EQ(true, is_valid_package_name("android"));
     EXPECT_EQ(true, is_valid_package_name("com.example"));
     EXPECT_EQ(true, is_valid_package_name("com.example-1"));
     EXPECT_EQ(true, is_valid_package_name("com.example-1024"));
@@ -518,9 +506,10 @@
 
     EXPECT_EQ(false, is_valid_package_name("1234.package"));
     EXPECT_EQ(false, is_valid_package_name("com.1234.package"));
-    EXPECT_EQ(false, is_valid_package_name("package"));
     EXPECT_EQ(false, is_valid_package_name(""));
     EXPECT_EQ(false, is_valid_package_name("."));
+    EXPECT_EQ(false, is_valid_package_name(".."));
+    EXPECT_EQ(false, is_valid_package_name("../"));
     EXPECT_EQ(false, is_valid_package_name("com.example/../com.evil/"));
     EXPECT_EQ(false, is_valid_package_name("com.example-1/../com.evil/"));
     EXPECT_EQ(false, is_valid_package_name("/com.evil"));
diff --git a/cmds/installd/utils.cpp b/cmds/installd/utils.cpp
index ba40041..c59f481 100644
--- a/cmds/installd/utils.cpp
+++ b/cmds/installd/utils.cpp
@@ -371,7 +371,7 @@
         return false;
     }
 
-    if (!hasSep || front) {
+    if (front) {
         LOG(WARNING) << "Missing separator in " << packageName;
         return false;
     }