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)) {