summaryrefslogtreecommitdiff
path: root/init/builtins.cpp
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@google.com>2016-07-18 15:58:42 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2016-07-18 15:58:42 +0000
commit96f387e8c02bdfcd5ed53684b5563c208770f7ee (patch)
tree8255a411554b9266f9b0e1d5e7c3c04ada1b40d2 /init/builtins.cpp
parentefa8604a1d1b3acd156d6aefdf7840d9e6486dd0 (diff)
parent1635afe83d1ebd6b5f1fac1e9c6c6b5cd1c93204 (diff)
Merge "Only restorecon CE storage after unlocked." into nyc-mr1-dev
Diffstat (limited to 'init/builtins.cpp')
-rw-r--r--init/builtins.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/init/builtins.cpp b/init/builtins.cpp
index 56318771f..70f919401 100644
--- a/init/builtins.cpp
+++ b/init/builtins.cpp
@@ -875,8 +875,12 @@ static int do_restorecon_recursive(const std::vector<std::string>& args) {
int ret = 0;
for (auto it = std::next(args.begin()); it != args.end(); ++it) {
- if (restorecon_recursive(it->c_str()) < 0)
+ /* The contents of CE paths are encrypted on FBE devices until user
+ * credentials are presented (filenames inside are mangled), so we need
+ * to delay restorecon of those until vold explicitly requests it. */
+ if (restorecon_recursive_skipce(it->c_str()) < 0) {
ret = -errno;
+ }
}
return ret;
}