summaryrefslogtreecommitdiff
path: root/init/builtins.cpp
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2016-07-18 16:06:34 +0000
committerandroid-build-merger <android-build-merger@google.com>2016-07-18 16:06:34 +0000
commit91404d94813cb6fb7a29b185ec58ca5290d9ccdf (patch)
tree8a0e67ef8cc1150f2a3057a894ea7ba727196657 /init/builtins.cpp
parent2722208dd8b7ffaf6e15edea30d4d206a8b56ba2 (diff)
parent96f387e8c02bdfcd5ed53684b5563c208770f7ee (diff)
Merge \"Only restorecon CE storage after unlocked.\" into nyc-mr1-dev
am: 96f387e8c0 Change-Id: I3a1c31334d32e7bdff8e05558356d2833fcfb831
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 38b44b7d8..b227d40b7 100644
--- a/init/builtins.cpp
+++ b/init/builtins.cpp
@@ -861,8 +861,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;
}