aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Rosenberg <drosen@google.com>2018-10-25 16:22:50 -0700
committerMoyster <oysterized@gmail.com>2018-12-21 13:41:21 +0100
commitbca99d91bc2b2cf57f17a2688ba4baeec65def4c (patch)
treeaf64ecf72730ed32ead920d17fae9a145504cae4
parentcad3ff52bc408fcf4b153800add83e195759dfbc (diff)
ANDROID: sdcardfs: Add sandbox
Android/sandbox is treated the same as Android/data Bug: 27915347 Test: ls -l /sdcard/Android/sandbox/*somepackage* after creating the folder. Signed-off-by: Daniel Rosenberg <drosen@google.com> Change-Id: I7ef440a88df72198303c419e1f2f7c4657f9c170
-rwxr-xr-xfs/sdcardfs/derived_perm.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/sdcardfs/derived_perm.c b/fs/sdcardfs/derived_perm.c
index 75beeff14..7311c75f8 100755
--- a/fs/sdcardfs/derived_perm.c
+++ b/fs/sdcardfs/derived_perm.c
@@ -65,6 +65,7 @@ void get_derived_permission_new(struct dentry *parent, struct dentry *dentry,
int err;
struct qstr q_Android = QSTR_LITERAL("Android");
struct qstr q_data = QSTR_LITERAL("data");
+ struct qstr q_sandbox = QSTR_LITERAL("sandbox");
struct qstr q_obb = QSTR_LITERAL("obb");
struct qstr q_media = QSTR_LITERAL("media");
struct qstr q_cache = QSTR_LITERAL("cache");
@@ -112,6 +113,10 @@ void get_derived_permission_new(struct dentry *parent, struct dentry *dentry,
/* App-specific directories inside; let anyone traverse */
info->data->perm = PERM_ANDROID_DATA;
set_top(info, info->data);
+ } else if (qstr_case_eq(name, &q_sandbox)) {
+ /* App-specific directories inside; let anyone traverse */
+ info->data->perm = PERM_ANDROID_DATA;
+ set_top(info, info->data);
} else if (qstr_case_eq(name, &q_obb)) {
/* App-specific directories inside; let anyone traverse */
info->data->perm = PERM_ANDROID_OBB;