summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Rosenberg <drosen@google.com>2018-10-25 16:22:50 -0700
committerDaniel Rosenberg <drosen@google.com>2018-11-28 00:11:15 +0000
commitfa9640e5dd6d7cd70d37e53584a3b8e46ef7b550 (patch)
tree118b6e6aedc968ff6aecc74a7fdb592e453b175e
parenta26c91b6d2b97fb0517849f789d9628b53eb7a94 (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
-rw-r--r--fs/sdcardfs/derived_perm.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/sdcardfs/derived_perm.c b/fs/sdcardfs/derived_perm.c
index 85126ec6533c..62ffdb0cb17b 100644
--- a/fs/sdcardfs/derived_perm.c
+++ b/fs/sdcardfs/derived_perm.c
@@ -62,6 +62,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");
@@ -110,6 +111,9 @@ void get_derived_permission_new(struct dentry *parent, struct dentry *dentry,
if (qstr_case_eq(name, &q_data)) {
/* App-specific directories inside; let anyone traverse */
info->data->perm = PERM_ANDROID_DATA;
+ } else if (qstr_case_eq(name, &q_sandbox)) {
+ /* App-specific directories inside; let anyone traverse */
+ info->data->perm = PERM_ANDROID_DATA;
} else if (qstr_case_eq(name, &q_obb)) {
/* App-specific directories inside; let anyone traverse */
info->data->perm = PERM_ANDROID_OBB;