Switch to new FBE emulation property.
Also prepare CE/DE storage directories for owner user at boot.
Bug: 22358539
Change-Id: I76228952c990ebed83360c69ef36321b99114196
diff --git a/Ext4Crypt.cpp b/Ext4Crypt.cpp
index ae6a960..028c12c 100644
--- a/Ext4Crypt.cpp
+++ b/Ext4Crypt.cpp
@@ -52,6 +52,8 @@
using android::base::StringPrintf;
+static const char* kPropEmulateFbe = "persist.vold.emulate_fbe";
+
namespace {
// Key length in bits
const int key_length = 128;
@@ -683,7 +685,7 @@
}
int e4crypt_unlock_user_key(userid_t user_id, const char* token) {
- if (property_get_bool("vold.emulate_fbe", false)) {
+ if (property_get_bool(kPropEmulateFbe, false)) {
// When in emulation mode, we just use chmod
if (chmod(android::vold::BuildDataSystemCePath(user_id).c_str(), 0771) ||
chmod(android::vold::BuildDataUserPath(nullptr, user_id).c_str(), 0771)) {
@@ -704,7 +706,7 @@
}
int e4crypt_lock_user_key(userid_t user_id) {
- if (property_get_bool("vold.emulate_fbe", false)) {
+ if (property_get_bool(kPropEmulateFbe, false)) {
// When in emulation mode, we just use chmod
if (chmod(android::vold::BuildDataSystemCePath(user_id).c_str(), 0000) ||
chmod(android::vold::BuildDataUserPath(nullptr, user_id).c_str(), 0000)) {