Android: sdcardfs: Change cache GID value
authorDaniel Rosenberg <drosen@google.com>
Tue, 18 Apr 2017 00:11:38 +0000 (17:11 -0700)
committerDaniel Rosenberg <drosen@google.com>
Wed, 19 Apr 2017 22:25:49 +0000 (15:25 -0700)
Change-Id: Ieb955dd26493da26a458bc20fbbe75bca32b094f
Signed-off-by: Daniel Rosenberg <drosen@google.com>
Bug: 37193650

fs/sdcardfs/derived_perm.c
fs/sdcardfs/multiuser.h

index 14747a8..1015333 100644 (file)
@@ -222,7 +222,7 @@ void fixup_lower_ownership(struct dentry *dentry, const char *name)
                break;
        case PERM_ANDROID_PACKAGE_CACHE:
                if (info->d_uid != 0)
-                       gid = multiuser_get_cache_gid(info->d_uid);
+                       gid = multiuser_get_ext_cache_gid(info->d_uid);
                else
                        gid = multiuser_get_uid(info->userid, uid);
                break;
index 2e89b58..d0c925c 100644 (file)
@@ -23,6 +23,8 @@
 #define AID_APP_END          19999 /* last app user */
 #define AID_CACHE_GID_START  20000 /* start of gids for apps to mark cached data */
 #define AID_EXT_GID_START    30000 /* start of gids for apps to mark external data */
+#define AID_EXT_CACHE_GID_START 40000 /* start of gids for apps to mark external cached data */
+#define AID_EXT_CACHE_GID_END 49999   /* end of gids for apps to mark external cached data */
 #define AID_SHARED_GID_START 50000 /* start of gids for apps in each user to share */
 
 typedef uid_t userid_t;
@@ -33,9 +35,9 @@ static inline uid_t multiuser_get_uid(userid_t user_id, appid_t app_id)
        return (user_id * AID_USER_OFFSET) + (app_id % AID_USER_OFFSET);
 }
 
-static inline gid_t multiuser_get_cache_gid(uid_t uid)
+static inline gid_t multiuser_get_ext_cache_gid(uid_t uid)
 {
-       return uid - AID_APP_START + AID_CACHE_GID_START;
+       return uid - AID_APP_START + AID_EXT_CACHE_GID_START;
 }
 
 static inline gid_t multiuser_get_ext_gid(uid_t uid)